Mastering PDF with PHP
Minimum price
Suggested price

Mastering PDF with PHP

Create, read and edit PDF files in your PHP applications

About the Book

Welcome to the world of dynamically built PDF documents!

In today's web applications, the Portable Document Format is commonly used to send invoices, reports, tickets, e-books and many other files. Chances are that you are already working in a project that requires processing PDF files.

With this book, you'll save a lot of time by knowing the most popular tools on the market, their features and drawbacks. You'll avoid wasting weeks comparing and hacking a multitude of solutions. This is your guide to achieve great results faster!

My book is not tied to any particular framework, however we might use some components. Users of all frameworks are welcome here, just like people who code plain PHP.

This is a work in progress. I will add more details about every HTML to PDF conversion tool that I know. I will cover advanced features like PDF/A, tagged PDF, and so on.

However, if you buy this book now, you'll get free lifetime updates! And I might raise the price in the future, so hurry up!

About the Author

Piotr Horzycki
Piotr Horzycki

I'm a software developer mostly with a PHP and Java background. I started my professional career in 2008, just before a global economic crisis hit. I survived and then learnt a lot about different industries I worked for: media, advertising, education and finance.

I'm running a blog about fintech, security and PDF processing. I give talks at meetups and conferences, including International PHP Conference in Munich. My article about MoneyPHP has been published in the php[architect] magazine. I have a few contributions to the mPDF library.

Table of Contents

  • Introduction
    • Who is this book for?
    • How to read this book?
    • About the author
  • What is Portable Document Format for?
    • Quick look at the history
    • Main features
    • Which version to use?
    • Differences between HTML and PDF
    • Is PDF a right choice for me?
  • The structure of a PDF file
    • Main goals
    • Four parts of a file
    • Write your own PDF in Notepad
    • Adding metadata
    • Compression
    • Summary
  • An example document: an invoice
    • An example invoice
    • Basic HTML structure
    • Body structure
    • Creating a stylesheet
    • Validating document syntax
    • Summary
  • Choosing a tool to generate PDF files
    • Two ways to create a PDF file
    • Native PHP libraries
    • External conversion tools
    • Summary
  • Understanding fonts
    • How fonts work?
    • Font file formats in the PDF
    • Picking a proper font
    • Selecting a font in CSS
    • Text transformations
    • ANSI or Mac versus Unicode
    • Summary
  • Encryption
    • Choosing the cipher
    • User permissions
    • Encryption with TCPDF
    • Encryption with mPDF
    • Encryption with Dompdf
    • Encryption with FPDF
    • Encrypting an existing file with command line tools
    • Summary
  • Calling external programs from a PHP script
    • Input, output and exit codes
    • Basic execution from a PHP script
    • Escaping arguments
    • Opening and controlling a process
    • The most convenient solution: The Process Component
    • Reporting progress of time-consuming tasks
    • Queueing tasks
    • Summary
  • Styling pages with CSS
    • Page dimensions and margins
    • Adjusting individual pages
    • Page-margin boxes and generated content
    • Bleed area and crop marks
    • Controlling page breaks
    • Media queries
    • Summary
  • Reading and testing PDF files
    • Metadata and text extraction
    • Taking a screenshot
    • Summary
  • Editing PDF files
    • Importing a document to FPDF or TCPDF
    • The PDF Toolkit
    • Manipulating files with pdfjam
    • Summary
  • Notes

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

Do Well. Do Good.

Authors have earned$10,898,062writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF, EPUB and/or MOBI files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub