nuzkito/chrome-html-to-pdf

There is no license information available for the latest version (2.0.0) of this package.

Converts HTML to PDF using Google Chrome

2.0.0 2020-05-17 22:47 UTC

This package is auto-updated.

Last update: 2024-10-18 09:13:33 UTC


README

Simple wrapper to convert HTML to PDF using Google Chrome in headless mode.

Install

composer require nuzkito/chrome-html-to-pdf

Requires Chrome 59 installed in Linux and Mac, and Chrome 60 in Windows.

To install Chrome in a Linux server based in Debian:

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb
sudo apt-get install -f

In other cases download it in https://www.google.es/chrome/browser/desktop/index.html

Use

<?php

use Nuzkito\ChromePdf\ChromePdf;

// By default it will search for Chrome in the default path in each OS,
$pdf = new ChromePdf();
// but you need it, you can specify the route to the binary.
$pdf = new ChromePdf('/path/to/google-chrome');

// Route when PDF will be saved.
$pdf->output('/path/to/result.pdf');

// You can generate a PDF from a url
$pdf->generateFromUrl('http://google.es');
// ... from a HTML file
$pdf->generateFromFile('/path/to/html/document.html');
// ... or pass a string containing the HTML.
$pdf->generateFromHtml('<h1>Hello world!</h1>');

Tests

You need to install pdftotext to execute the automated tests:

sudo apt-get install poppler-utils

And then, execute vendor/bin/phpunit.

Config

If you need to specify the path to Chrome, you can create a config.php file with this content:

<?php

$_ENV['chrome-executable'] = '/path/to/google-chrome';