A simple Laravel 4 service provider with some basic configuration for including the TCPDF library
maxxscho/laravel-tcpdf is a Laravel package for a simple laravel 4 service provider with some basic configuration for including the tcpdf library.
It currently has 87 GitHub stars and 25.766 downloads on Packagist (latest version 0.2.6).
Install it with composer require maxxscho/laravel-tcpdf.
Discover more Laravel packages by maxxscho
or browse all Laravel packages to compare alternatives.
Last updated
NOT MAINTAINED ANYMORE!!
A simple Laravel 4 service provider with some basic configuration for including the TCPDF library
The Laravel TCPDF service provider can be installed via composer by requiring the maxxscho/laravel-tcpdf package in your project's composer.json. (The installation may take a while, because the package requires TCPDF. Sadly its .git folder is very heavy)
{
"require": {
"maxxscho/laravel-tcpdf": "0.*"
}
}
Next, add the service provider to app/config/app.php.
'providers' => [
//..
'Maxxscho\LaravelTcpdf\LaravelTcpdfServiceProvider',
]
That's it! You're good to go.
Here is a little example:
PDF::SetTitle('Hello World');
PDF::AddPage();
PDF::Write(0, 'Hello World');
PDF::Output('hello_world.pdf');
For a list of all available function take a look at the TCPDF Documentation
Laravel-TCPDF comes with some basic configuration. If you want to override the defaults, you can publish the config, like so:
php artisan config:publish maxxscho/laravel-tcpdf
Now access app/config/packages/maxxscho/laravel-tcpdf/config.phpto customize.
There is a 'blank' image in the assets folder of the package, which is in certain circumstances needed by TCPDF. Publish the assets, like so:
php artisan asset:publish maxxscho/laravel-tcpdf
Extending or overwriting Laravel TCPDF is easy. Simply extend \Maxxscho\LaravelTcpdf\LaravelTcpdf with your own class.
To add custom fonts set the fonts_directory in the config, relative to the public path. For example 'fonts/'.
To use a custom font you have to convert a font for TCPDF.
Copy your custom font(s) to your fonts path, in our case public/fonts/.
In your terminal do this:
vendor/maxxscho/laravel-tcpdf/vendor/tecnick.com/tcpdf/tools/tcpdf_addfont.php -i public/fonts/yourfont.ttf -o public/fonts
This uses a little tool provided by TCPDF to convert fonts for TCPDF.
The -i flag is for the input fonts (comma-separated list)
and the -o flag is for the output directory.
Read here all about TCPDF fonts and how to convert them the new way.
"PDF::setHtmlHeader($custom_header); PDF::Header();"