Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 

ChromePdf

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';