codedge / laravel-fpdf by codedge

Laravel package to include Fpdf. It ships with Fpdf 1.86.
1,045,096
256
7
Package Data
Maintainer Username: codedge
Maintainer Contact: holger.loesken@codedge.de (Holger Lösken)
Package Create Date: 2016-05-23
Package Last Update: 2024-04-01
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-04-22 03:03:04
Package Statistics
Total Downloads: 1,045,096
Monthly Downloads: 28,404
Daily Downloads: 486
Total Stars: 256
Total Watchers: 7
Total Forks: 77
Total Open Issues: 7

Laravel 5 package for Fpdf

Latest Stable Version Total Downloads StyleCI License

This repository implements a simple ServiceProvider that creates a singleton instance of the Fpdf PDF library - easily accessible via a Facade in Laravel 5.

See FPDF homepage for more information about the usage.

Installation using Composer

$ composer require codedge/laravel-fpdf

Usage

Laravel >= 5.5

Enjoy the auto discovery feature.

Laravel <5.5

To use the static interfaces (facades) you need to add the following lines to your config/app.php. The [1] is for registering the service provider, the [2] are for specifying the facades:

// config/app.php

return [

    //...
    
    'providers' => [
        // ...
        
        /*
         * Application Service Providers...
         */
        // ...
        Codedge\Fpdf\FpdfServiceProvider::class, // [1]
    ],
    
    // ...
    
    'aliases' => [
        // ...
        'Fpdf' => Codedge\Fpdf\Facades\Fpdf::class, // [2]
]

Now you can use the facades in your application.

Configuration (optional)

Run
php artisan vendor:publish --provider="Codedge\Fpdf\FpdfServiceProvider" --tag=config
to publish the configuration file to config/fpdf.php.

Open this file and enter the correct page settings, if you do not want the defaults.

Basic example

If you want to use the facade you can see a basic example here:

// app/Http/routes.php | app/routes/web.php

Route::get('/', function () {

    Fpdf::AddPage();
    Fpdf::SetFont('Courier', 'B', 18);
    Fpdf::Cell(50, 25, 'Hello World!');
    Fpdf::Output();

});

Of course you can also inject the singleton instance via dependency injection. See an example here:

// app/Http/routes.php | app/routes/web.php

Route::get('/', function (Codedge\Fpdf\Fpdf\Fpdf $fpdf) {

    $fpdf->AddPage();
    $fpdf->SetFont('Courier', 'B', 18);
    $fpdf->Cell(50, 25, 'Hello World!');
    $fpdf->Output();

});