Code review at scale is broken. Here’s how Augment Code is fixing it.

Tcpdf Laravel

elibyy/tcpdf-laravel image

Tcpdf Laravel stats

Downloads
1.3M
Stars
265
Open Issues
17
Forks
65

View on GitHub →

tcpdf support for Laravel 6, 7, 8, 9

Laravel 6-7-8-9-10 TCPDF

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

TCPDF is not really supported in PHP 7 but there's a plan for supporting it, check this out.

Installation

The Laravel TCPDF service provider can be installed via composer by requiring the elibyy/tcpdf-laravel 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)

composer require elibyy/tcpdf-laravel

or

Laravel 5.5+ will use the auto-discovery function.

{
"require": {
"elibyy/tcpdf-laravel": "^9.0"
}
}

If you don't use auto-discovery you will need to include the service provider / facade in config/app.php.

'providers' => [
//...
Elibyy\TCPDF\ServiceProvider::class,
]
 
//...
 
'aliases' => [
//...
'PDF' => Elibyy\TCPDF\Facades\TCPDF::class
]

(Please note: TCPDF cannot be used as an alias)

for lumen you should add the following lines:

$app->register(Elibyy\TCPDF\ServiceProvider::class);
class_alias(Elibyy\TCPDF\Facades\TCPDF::class, 'PDF');

That's it! You're good to go.

Here is a little example:

use PDF; // at the top of the file
 
PDF::SetTitle('Hello World');
PDF::AddPage();
PDF::Write(0, 'Hello World');
PDF::Output('hello_world.pdf');

another example for generating multiple PDF's

use PDF; // at the top of the file
 
for ($i = 0; $i < 5; $i++) {
PDF::SetTitle('Hello World'.$i);
PDF::AddPage();
PDF::Write(0, 'Hello World'.$i);
PDF::Output(public_path('hello_world' . $i . '.pdf'), 'F');
PDF::reset();
}

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 vendor:publish --provider="Elibyy\TCPDF\ServiceProvider"

Now access config/tcpdf.php to customize.

  • use_original_header is to used the original Header() from TCPDF.
    • Please note that PDF::setHeaderCallback(function($pdf){}) overrides this settings.
  • use_original_footer is to used the original Footer() from TCPDF.
    • Please note that PDF::setFooterCallback(function($pdf){}) overrides this settings.
  • use_fpdi is so that our internal helper will extend TcpdfFpdi instead of TCPDF.
    • Please note fpdi is not a dependency in my project so you will have to follow their install instructions here

Header/Footer helpers

I've got a pull-request asking for this so I've added the feature

now you can use PDF::setHeaderCallback(function($pdf){}) or PDF::setFooterCallback(function($pdf){})

elibyy photo

Yet another random developer :)

Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.


Elibyy Tcpdf Laravel Related Articles

Boost Guidelines & Skills Added in Inertia v2.3.16 image

Boost Guidelines & Skills Added in Inertia v2.3.16

Read article
Laravel Launches an Open Directory of AI Agent Skills for Laravel and PHP image

Laravel Launches an Open Directory of AI Agent Skills for Laravel and PHP

Read article
Filament turns five in style! image

Filament turns five in style!

Read article
Cache Concurrency Limiting in Laravel 12.53.0 image

Cache Concurrency Limiting in Laravel 12.53.0

Read article
Stop Failing APIs from Killing Your Queue — Fuse for Laravel image

Stop Failing APIs from Killing Your Queue — Fuse for Laravel

Read article
Blaze: An Optimized Blade Template Compiler for Laravel image

Blaze: An Optimized Blade Template Compiler for Laravel

Read article
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS Starter Kit

SaaSykit is a Multi-tenant Laravel SaaS Starter Kit that comes with all features required to run a modern SaaS. Payments, Beautiful Checkout, Admin Panel, User dashboard, Auth, Ready Components, Stats, Blog, Docs and more.

SaaSykit: Laravel SaaS Starter Kit
Harpoon: Next generation time tracking and invoicing logo

Harpoon: Next generation time tracking and invoicing

The next generation time-tracking and billing software that helps your agency plan and forecast a profitable future.

Harpoon: Next generation time tracking and invoicing
Acquaint Softtech logo

Acquaint Softtech

Acquaint Softtech offers AI-ready Laravel developers who onboard in 48 hours at $3000/Month with no lengthy sales process and a 100 percent money-back guarantee.

Acquaint Softtech
Lucky Media logo

Lucky Media

Get Lucky Now - the ideal choice for Laravel Development, with over a decade of experience!

Lucky Media
PhpStorm logo

PhpStorm

The go-to PHP IDE with extensive out-of-the-box support for Laravel and its ecosystem.

PhpStorm
Get expert guidance in a few days with a Laravel code review logo

Get expert guidance in a few days with a Laravel code review

Expert code review! Get clear, practical feedback from two Laravel devs with 10+ years of experience helping teams build better apps.

Get expert guidance in a few days with a Laravel code review