2017 © Pedro Peláez
 

library laravel-pdf

Generate PDFs in Laravel with this mPDF wrapper.

image

vzool/laravel-pdf

Generate PDFs in Laravel with this mPDF wrapper.

  • Tuesday, December 27, 2016
  • by vzool
  • Repository
  • 1 Watchers
  • 0 Stars
  • 1,799 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 3 Versions
  • 3 % Grown

The README.md

Laravel PDF: mPDF wrapper for Laravel 5

Easily generate PDF documents from HTML right inside of Laravel using this mPDF wrapper., (*1)

Installation

Require this package in your composer.json or install it by running:, (*2)

composer require vzool/laravel-pdf

To start using Laravel, add the Service Provider and the Facade to your config/app.php:, (*3)

'providers' => [
    // ...
    vzool\LaravelPdf\PdfServiceProvider::class
]
'aliases' => [
    // ...
    'PDF' => vzool\LaravelPdf\Facades\Pdf::class
]

Basic Usage

To use Laravel PDF add something like this to one of your controllers. You can pass data to a view in /resources/views., (*4)

use PDF;

function generate_pdf() {
    $data = [
        'foo' => 'bar'
    ];
    $pdf = PDF::loadView('pdf.document', $data);
    return $pdf->stream('document.pdf');
}

Config

You can use a custom file to overwrite the default configuration. Just create config/pdf.php and add this:, (*5)

return [
    'mode'               => '',
    'format'             => 'A4',
    'defaultFontSize'    => '12',
    'defaultFont'        => 'sans-serif',
    'marginLeft'         => 10,
    'marginRight'        => 10,
    'marginTop'          => 10,
    'marginBottom'       => 10,
    'marginHeader'       => 0,
    'marginFooter'       => 0,
    'orientation'        => 'P',
    'title'              => 'Laravel PDF',
    'author'             => '',
    'watermark'          => '',
    'showWatermark'      => false,
    'watermarkFont'      => 'sans-serif',
    'SetDisplayMode'     => 'fullpage',
    'watermarkTextAlpha' => 0.1
];

Headers and Footers

If you want to have headers and footers that appear on every page, add them to your <body> tag like this:, (*6)

<htmlpageheader name="page-header">
    Your Header Content
</htmlpageheader>

<htmlpagefooter name="page-footer">
    Your Footer Content
</htmlpagefooter>

Now you just need to define them with the name attribute in your CSS:, (*7)

@page {
    header: page-header;
    footer: page-footer;
}

Inside of headers and footers {PAGENO} can be used to display the page number., (*8)

Included Fonts

By default you can use all the fonts shipped with mPDF., (*9)

Custom Fonts

You can use your own fonts in the generated PDFs. The TTF files have to be located in one folder, e.g. /resources/fonts/. Add this to your configuration file (/config/pdf.php):, (*10)

return [
    'custom_font_path' => base_path('/resources/fonts/'), // don't forget the trailing slash!
    'custom_font_data' => [
        'examplefont' => [
            'R'  => 'ExampleFont-Regular.ttf',    // regular font
            'B'  => 'ExampleFont-Bold.ttf',       // optional: bold font
            'I'  => 'ExampleFont-Italic.ttf',     // optional: italic font
            'BI' => 'ExampleFont-Bold-Italic.ttf' // optional: bold-italic font
        ]
        // ...add as many as you want.
    ]
];

Now you can use the font in CSS:, (*11)

body {
    font-family: 'examplefont', sans-serif;
}

Set Protection

To set protection, you just call the SetProtection() method and pass an array with permissions, an user password and an owner password., (*12)

The passwords are optional., (*13)

There are a fews permissions: 'copy', 'print', 'modify', 'annot-forms', 'fill-forms', 'extract', 'assemble', 'print-highres'., (*14)

use PDF;

function generate_pdf() {
    $data = [
        'foo' => 'bar'
    ];
    $pdf = PDF::loadView('pdf.document', $data);
    $pdf->SetProtection(['copy', 'print'], '', 'pass');
    return $pdf->stream('document.pdf');
}

Find more information to SetProtection() here: https://mpdf.github.io/reference/mpdf-functions/setprotection.html, (*15)

Extra

Add a new instance called instance which will return your mPDF instance., (*16)

License

Laravel PDF is open-sourced software licensed under the MIT license, (*17)

The Versions

27/12 2016

dev-master

9999999-dev

Generate PDFs in Laravel with this mPDF wrapper.

  Sources   Download

MIT

The Requires

 

laravel pdf mpdf

27/12 2016

v1.4.1

1.4.1.0

Generate PDFs in Laravel with this mPDF wrapper.

  Sources   Download

MIT

The Requires

 

laravel pdf mpdf

27/12 2016

v1.5

1.5.0.0

Generate PDFs in Laravel with this mPDF wrapper.

  Sources   Download

MIT

The Requires

 

laravel pdf mpdf