This class is a modified version of FPDF that adds UTF-8 support. The latest version is based on FPDF 1.85.

v1.33 2022-12-20 10:26 UTC

This package is auto-updated.

Last update: 2024-06-20 13:41:45 UTC



This repository is only made for cloning official tFPDF releases which are available at: THERE WILL BE NO DEVELOPMENT IN THIS REPOSITORY!

The only change in this version is that the require_once() calls to font/unifont/ttfonts.php are commented and resolved through the composer autoloader. The demo ex.php was changed accordingly, too.

tFPDF accepts UTF-8 encoded text. It embeds font subsets allowing small PDF files.

It requires a folder 'unifont' as a subfolder of the 'font' folder.

You should make the 'unifont' folder writeable (CHMOD 755 or 644). Although this is not essential, it allows caching of the font metrics the first time a font is used, making subsequent uses much faster.

All tFPDF requires is a .ttf TrueType font file. The file should be placed in the 'unifont' directory. Optionally, you can also define the path to your system fonts e.g. 'C:\Windows\Font' (see the example ex.php file) and reference TrueType fonts in this directory.

Pass a fourth parameter as true when calling AddFont(), and use utf-8 encoded text when using Write() etc.

Installation with Composer

If you're using Composer to manage dependencies, you can use

$ composer require setasign/tfpdf:1.33

or you can include the following in your composer.json file:

    "require": {
        "setasign/tfpdf": "1.33"


Notice that tFPDF is not name-spaced. You can extend the class this way:

namespace your\namespace;
class Document extends \tFPDF

or create an instance this way:

$pdf = new \tFPDF();