maxxscho / laravel-tcpdf by maxxscho

A simple Laravel 4 service provider with some basic configuration for including the TCPDF library
24,908
87
5
Package Data
Maintainer Username: maxxscho
Maintainer Contact: maxx.schober@gmail.com (Markus Schober)
Package Create Date: 2013-12-16
Package Last Update: 2023-02-03
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-12-24 15:00:09
Package Statistics
Total Downloads: 24,908
Monthly Downloads: 121
Daily Downloads: 0
Total Stars: 87
Total Watchers: 5
Total Forks: 24
Total Open Issues: 2

NOT MAINTAINED ANYMORE!!

Laravel TCPDF

Build Status

A simple Laravel 4 service provider with some basic configuration for including the TCPDF library

Installation

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

Configuration

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.

Assets

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

Extend/Overwrite

Extending or overwriting Laravel TCPDF is easy. Simply extend \Maxxscho\LaravelTcpdf\LaravelTcpdf with your own class.

Custom Fonts

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.

Custom Header

"PDF::setHtmlHeader($custom_header); PDF::Header();"