2017 © Pedro Peláez
 

library laravel-dompdf

A DOMPDF Wrapper for Laravel

image

mangirdas/laravel-dompdf

A DOMPDF Wrapper for Laravel

  • Wednesday, February 1, 2017
  • by maskas
  • Repository
  • 1 Watchers
  • 0 Stars
  • 7 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 387 Forks
  • 0 Open issues
  • 5 Versions
  • 0 % Grown

The README.md

DOMPDF Wrapper for Laravel 5

For Laravel 4.x, check the 0.4 branch!

Require this package in your composer.json and update composer. This will download the package and the dompdf + fontlib libraries also., (*1)

composer require barryvdh/laravel-dompdf

Installation

Laravel 5.x:

After updating composer, add the ServiceProvider to the providers array in config/app.php, (*2)

Barryvdh\DomPDF\ServiceProvider::class,

You can optionally use the facade for shorter code. Add this to your facades:, (*3)

'PDF' => Barryvdh\DomPDF\Facade::class,

Lumen:

After updating composer add the following lines to register provider in bootstrap/app.php, (*4)

$app->register(\Barryvdh\DomPDF\ServiceProvider::class);, (*5)

To change the configuration, copy the config file to your config folder and enable it in bootstrap/app.php:, (*6)

$app->configure('dompdf');, (*7)

Using

You can create a new DOMPDF instance and load a HTML string, file or view name. You can save it to a file, or stream (show in browser) or download., (*8)

$pdf = App::make('dompdf.wrapper');
$pdf->loadHTML('<h1>Test</h1>');
return $pdf->stream();

Or use the facade:, (*9)

$pdf = PDF::loadView('pdf.invoice', $data);
return $pdf->download('invoice.pdf');

You can chain the methods:, (*10)

return PDF::loadFile(public_path().'/myfile.html')->save('/path-to/my_stored_file.pdf')->stream('download.pdf');

You can change the orientation and paper size, and hide or show errors (by default, errors are shown when debug is on), (*11)

PDF::loadHTML($html)->setPaper('a4', 'landscape')->setWarnings(false)->save('myfile.pdf')

If you need the output as a string, you can get the rendered PDF with the output() function, so you can save/output it yourself., (*12)

Use php artisan vendor:publish to create a config file located at config/dompdf.php which will allow you to define local configurations to change some settings (default paper etc). You can also use your ConfigProvider to set certain keys., (*13)

Configuration

The defaults configuration settings are set in config/dompdf.php. Copy this file to your own config directory to modify the values. You can publish the config using this command:, (*14)

php artisan vendor:publish --provider="Barryvdh\DomPDF\ServiceProvider"

You can still alter the dompdf options in your code before generating the pdf using this command:, (*15)

PDF::setOptions(['dpi' => 150, 'defaultFont' => 'sans-serif']);

Available options and their defaults: * rootDir: "{app_directory}/vendor/dompdf/dompdf" * tempDir: "/tmp" (available in config/dompdf.php) * fontDir: "{app_directory}/storage/fonts/" (available in config/dompdf.php) * fontCache: "{app_directory}/storage/fonts/" (available in config/dompdf.php) * chroot: "{app_directory}" (available in config/dompdf.php) * logOutputFile: "/tmp/log.htm" * defaultMediaType: "screen" (available in config/dompdf.php) * defaultPaperSize: "a4" (available in config/dompdf.php) * defaultFont: "serif" (available in config/dompdf.php) * dpi: 96 (available in config/dompdf.php) * fontHeightRatio: 1.1 (available in config/dompdf.php) * isPhpEnabled: false (available in config/dompdf.php) * isRemoteEnabled: true (available in config/dompdf.php) * isJavascriptEnabled: true (available in config/dompdf.php) * isHtml5ParserEnabled: false (available in config/dompdf.php) * isFontSubsettingEnabled: false (available in config/dompdf.php) * debugPng: false * debugKeepTemp: false * debugCss: false * debugLayout: false * debugLayoutLines: true * debugLayoutBlocks: true * debugLayoutInline: true * debugLayoutPaddingBox: true * pdfBackend: "CPDF" (available in config/dompdf.php) * pdflibLicense: "" * adminUsername: "user" * adminPassword: "password", (*16)

Tip: UTF-8 support

In your templates, set the UTF-8 Metatag:, (*17)

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

Tip: Page breaks

You can use the CSS page-break-before/page-break-after properties to create a new page., (*18)

<style>
.page-break {
    page-break-after: always;
}
</style>
<h1>Page 1</h1>
<div class="page-break"></div>
<h1>Page 2</h1>

License

This DOMPDF Wrapper for Laravel is open-sourced software licensed under the MIT license, (*19)

The Versions

01/02 2017

0.4.x-dev

0.4.9999999.9999999-dev

A DOMPDF Wrapper for Laravel

  Sources   Download

MIT

The Requires

 

laravel pdf dompdf

01/02 2017

v0.4.9

0.4.9.0

A DOMPDF Wrapper for Laravel

  Sources   Download

MIT

The Requires

 

laravel pdf dompdf

01/02 2017

v0.4.8

0.4.8.0

A DOMPDF Wrapper for Laravel

  Sources   Download

MIT

The Requires

 

laravel pdf dompdf

01/02 2017

dev-master

9999999-dev

A DOMPDF Wrapper for Laravel

  Sources   Download

MIT

The Requires

 

laravel pdf dompdf

01/02 2017

v0.4.7

0.4.7.0

A DOMPDF Wrapper for Laravel

  Sources   Download

MIT

The Requires

 

laravel pdf dompdf