Skip to content
EntityQ2275327· pop 6· linked from 5 articles

Also known as php-fpdf

TCPDF is a free and open source software PHP class for generating PDF documents. TCPDF is the only PHP-based library that includes complete support for UTF-8 Unicode and right-to-left languages, including the bidirectional algorithm.

Source code

TCPDF is in maintenance-only mode. Active development has moved to tc-lib-pdf , its modern, modular successor — new projects should start there. TCPDF is still installed 100M+ times across 500+ PHP packages. If your product depends on it, sponsor continued maintenance → to keep this shared infrastructure secure and patched. TCPDF is a pure-PHP library for generating PDF documents and barcodes directly in application code. It has been widely used across many PHP stacks and still provides a complete feature set for text rendering, page composition, graphics, signatures, forms, and standards-oriented output. Package tecnickcom/tcpdf Author Nicola Asuni License GNU LGPL v3 (see LICENSE.TXT) Website Source Starting with this version, the TCPDF class no longer contains its own PDF engine. It is a compatibility facade : every public TCPDF method is a thin wrapper that delegates the actual PDF generation to the modern tecnickcom/tc-lib-pdf engine ( Com Tecnick Pdf Tcpdf ), while a small internal state layer reproduces the legacy stateful cursor and page model (current X/Y, margins, fonts, colors, automatic page breaks, headers/footers). What this means in practice: The public API is unchanged. All 291 public method signatures (names, parameters, defaults) are identical to legacy TCPDF; existing integrations keep calling new TCPDF(...) , AddPage() , SetFont() , Cell() , writeHTML() , Output() exactly as before. Rendering is done by the modern engine. Text layout, HTML/CSS, fonts, graphics, barcodes, encryption, signatures and output generation come from the tc-lib- libraries. Per-method delegation status is documented. See MAPPING.md for the status of every public method ( delegated , adapter , shim , intentional-noop , blocked ) with notes; the table is machine-verified against the class. Output is structurally equivalent, not byte-identical. Documents render with the same page sizes and content, but the modern engine's line-breaking and font metrics can differ slightly from the legacy implementation (long flowing documents may paginate one page earlier or later). Some legacy behaviors are intentionally not reproduced. A few features are dropped or changed where the modern engine's model takes precedence (legacy font definitions, EPS/AI vector import, always-on stream compression, policy-based local file access, assorted no-ops). See Breaking Changes below and the per-method notes in MAPPING.md for the full list. Active feature development has moved to tc-lib-pdf, the modern and modular successor. For new projects, use tecnickcom/tc-lib-pdf . This repository remains available for legacy systems and critical compatibility fixes. Migration Path New projects: install tecnickcom/tc-lib-pdf . Existing TCPDF users: keep TCPDF for current production workloads and migrate in phases. Teams seeking modern architecture, Composer-first design, and stronger type-safety should prioritize tc-lib-pdf . TCPDF has migrated font loading to the tc-lib font stack (see "Breaking Changes" below). tecnickcom/tc-lib-pdf is the Composer entrypoint. Font assets are provided by tecnickcom/tc-lib-pdf-font and discovered under vendor/tecnickcom/tc-lib-pdf-font/target/fonts/ . Repository-shipped fonts/ assets are removed; TCPDF now resolves bundled fonts from tc-lib assets. Who is affected: Deployments that relied on local fonts/ files without Composer dependencies. Applications with custom K PATH FONTS assumptions tied to a repository-relative fonts folder. Integrations that use custom or generated font definitions and expect PHP-only descriptor files. 1. Install dependencies with Composer. 2. Ensure tc-lib font assets are available in vendor/tecnickcom/tc-lib-pdf-font/target/fonts/ . 3. Keep using SetFont() / AddFont() from TCPDF, but validate that each custom family resolves from tc-lib assets or from your explicit font path. 4. Update deployment packaging so vendor/ font assets are shipped in production. 1. Run make deps to install Composer depende

Excerpt from the source-code README · 13,706 chars · not written by Vinony

Wikidata facts

Instance of
web framework
Official website
tcpdf.org
Show 4 more facts
operating system
cross-platform
programmed in
PHP
source code repository URL
github.com/tecnickcom/tcpdf
software version identifier
6.11.3
Sources (4)

via Wikidata · CC0

Article · Français

TCPDF est une classe PHP, d'utilisation répandue, permettant de créer des documents PDF. Elle est libre et open source. TCPDF est actuellement la seule bibliothèque PHP de génération PDF offrant un support complet de l'encodage UTF-8 et des langues s'écrivant de droite à gauche, incluant le texte bidirectionnel. TCPDF est intégrée dans des CMS, applications et frameworks PHP répandus, par exemple : * Joomla! * Drupal * Moodle * PrestaShop[réf. souhaitée] * phpMyAdmin * Symfony.

Abstract from DBpedia / Wikipedia · CC BY-SA

Available in 6 languages

via Wikidata sitelinks · CC0