PackageTrack
Sign in Get early access

tecnickcom/tcpdf

Deprecated legacy PDF engine for PHP. Use instead tecnickcom/tc-lib-pdf.

7.0.6 115M downloads/mo #383 most downloaded on Packagist tecnickcom/TCPDF

What this package is like to depend on

Last release 2 days ago

21 Aug 2026

Release timing varies

gaps range from 2 weeks to 6 months

Nearly every release is documented

notes for 141 of 151 stable releases

Nothing withdrawn

no release was ever pulled

13 years old

151 releases · first in 2013

12 releases in the last 12 months

see the full history below

Release timeline

151 releases · May 2013 to Aug 2026
2014 2016 2018 2020 2022 2024 2026
Release Pre-release

Releases

latest 60 of 151
  1. 7.0.6 21 Aug 2026

    Nothing published for this version

  2. 7.0.5 15 Aug 2026

    Nothing published for this version

  3. 7.0.4 13 Jul 2026

    Nothing published for this version

  4. 7.0.3 07 Jul 2026

    Nothing published for this version

  5. 7.0.2 26 Jun 2026

    Nothing published for this version

  6. 7.0.1 19 Jun 2026

    Nothing published for this version

  7. 7.0.0 18 Jun 2026
    Release notes
    • TCPDF IS DEPRECATED AND IN MAINTENANCE-ONLY MODE
      • TCPDF is now a compatibility facade over the modern tecnickcom/tc-lib-pdf engine. It does not reproduce legacy output exactly, and some methods are adapters, shims, or no-ops (see MAPPING.md); both new and existing projects are encouraged to migrate to tecnickcom/tc-lib-pdf.
        • The TCPDF class no longer contains its own PDF engine; every public method delegates rendering to \Com\Tecnick\Pdf\Tcpdf, while a small internal state layer reproduces the legacy cursor/page model (X/Y, margins, fonts, colors, automatic page breaks, headers/footers).
        • The public API is unchanged: all 291 public method signatures (names, parameters, defaults) match legacy TCPDF, so existing integrations keep working.
        • Output is structurally equivalent, not byte-identical: page sizes and content match, but the modern engine's line-breaking and font metrics can differ slightly (long flowing documents may paginate one page earlier or later).
        • Per-method delegation status is documented in MAPPING.md (delegated, adapter, shim, intentional-noop, blocked), machine-verified against the class.
      • tecnickcom/tc-lib-pdf is now a required Composer dependency; the engine and font assets are resolved from vendor/.
      • Minimum PHP version raised to 8.2 (was 7.1).
      • Bundled engine sources removed (include/, tcpdf_fonts.php, tcpdf_font_data.php, tcpdf_images.php, tcpdf_static.php, tcpdf_barcodes_1d.php, tcpdf_barcodes_2d.php); these capabilities are now provided by the tc-lib-* libraries.
      • Font loading migrated to tecnickcom/tc-lib-pdf-font assets resolved via Composer.
        • Install dependencies with Composer so vendor/tecnickcom/tc-lib-pdf-font/target/fonts/ exists.
        • Repository bundled fonts/ assets are removed; use tc-lib font assets or explicit custom font paths.
        • Legacy PHP font descriptors (fontname.php + fontname.z) are no longer supported; convert the original TTF/OTF with the tc-lib-pdf-font importer.
        • Validate all custom font registrations against tc-lib font assets.
      • Tooling: replaced the legacy test harness with a PHPUnit suite under test/, added Mago lint/format configuration, and refreshed CI and Makefile targets (make deps, make fonts, make fonts-rebuild).
      • See README.md for the full migration guide and MAPPING.md for per-method delegation status.

    Open source →
  8. 6.11.3 21 Apr 2026
    Release notes
    • Added deprecation notice.
      • Improved composer.json.
      • Added Makefile for common automation tasks.
    Open source →
  9. 6.11.2 03 Mar 2026
    Release notes
    • Refactor setCompression().
    Open source →
  10. 6.11.1 03 Mar 2026
    Release notes
    • Remove debug line preventing compression.
    Open source →
  11. 6.11.0 01 Mar 2026
    Release notes
    • Updated copyright year.
      • Updated linked http urls to https.
      • Fix PHP 8.5 deprecation on curl_close() - PR #838
      • Fix PHP 8.5 deprecation on null array offset - PR #839
      • Fixed: Font subsetting - incorrect placement of head checksum - PR #849
      • Fix imagedestroy() deprecation in PHP 8.5 - PR #851
      • Fix Rendering of SVG -> PDF issue - PR #855
    Open source →
  12. 6.10.1 21 Nov 2025
    Release notes
    • cI: Add 8.5 to CI matrix - PR #836
      • Fix PHP 8.5 deprecation for xml_parser_free - PR #835
      • Fix bad text-align from HTML source - PR #833
      • Fix image on footer problems - PR #823
      • Preserving percentage gradient decimals and correctly clamp coordinates - PR #815
      • Enables compression for PDF/A - PR #820
    Open source →
  13. 6.10.0 27 May 2025
    Release notes
    • Embedded files support (Factur-X 1.07 / ZUGFeRD 2.3) #789
    Open source →
  14. 6.9.4 13 May 2025
    Release notes
    • Update donation link.
    Open source →
  15. 6.9.3 20 Apr 2025
    Release notes
    • New fix for "Deserialization of untrusted data" (check on valid protocols).
      • Removed global phar configuration.
    Open source →
  16. 6.9.2 18 Apr 2025
    Release notes
    • Quick fix for "Deserialization of untrusted data" security vulnerability reported by Positive Technologies.
      • Disable phar protocol globally.
    Open source →
  17. 6.9.1 03 Apr 2025
    Release notes
    • Fixed "Path Traversal" security vulnerability reported by Positive Technologies.
    Open source →
  18. 6.9.0 30 Mar 2025
    Release notes
    • Added PHP 8.4 testing.
      • Removed tcpdf_import.php and tcpdf_parser.php files (for a parser check the tc-lib-pdf-parser project instead).
      • Fix composer.json.
    Open source →
  19. 6.8.2 26 Jan 2025
    Release notes
    • Fix some annotation flags values.
      • Remove examples from packaging.
    Open source →
  20. 6.8.0 23 Dec 2024
    Release notes
    • Requires PHP 7.1+ and curl extension.
      • Escape error message.
      • Use strict time-constant function to compare TCPDF-tag hashes.
      • Add K_CURLOPTS config array to set custom cURL options (NOTE: some defaults have changed).
      • Add some addTTFfont fixes from tc-lib-pdf-font.
    Open source →
  21. 6.7.8 13 Dec 2024
    Release notes
    • Improve SVG detection by checking for (mandatory) namespace.
      • Use late state binding now that minimum PHP version is 5.5.
    Open source →
  22. 6.7.7 26 Oct 2024
    Release notes
    • Update regular expression to avoid ReDoS (CVE-2024-22641)
      • [PHP 8.4] Fix: Curl CURLOPT_BINARYTRANSFER deprecated #675
      • SVG detection fix for inline data images #646
      • Fix count svg #647
      • Since the version 6.7.4, the "0" is considered like empty string and not displayed
      • Fixed handling of transparency in PDF/A mode in addExtGState method
      • Encrypt /DA string when document is encrypted
      • Improve quality of generated seed, avoid potential security pitfall
      • Try to use random_bytes() first if it's available
      • Do not include the server parameters in the generated seed, as they might contain sensitive data
      • Fix bug on _getannotsrefs when there are empty signature appearances but not other annot on a page
      • Fix SVG coordinate parser that caused drawing artifacts
      • Remove usage of xml_set_object() function
    Open source →
  23. 6.7.6 06 Oct 2024
    Release notes
    • Forbid access to parent folder in HTML images.
    Open source →
  24. 6.7.5 20 Apr 2024
    Release notes
    • Update GitHub actions
      • fix: CSV-2024-22640 (#712)
    Open source →
  25. 6.7.4 25 Mar 2024
    Release notes
    • Upgrade tcpdf tag encryption algorithm.
      • Fix regression issue #699.
      • Fix security issue.
      • [BREAKING CHANGE] The tcpdf HTML tag syntax has changed, see example_049.php.
      • New K_ALLOWED_TCPDF_TAGS configuration constant to set the allowed methods for the tcdpf HTML tag.
      • Raised minimum PHP version to PHP 5.5.0.
    Open source →
  26. 6.6.2 17 Dec 2022
    Release notes
    • Ensure pregSplit return type is always array.
      • Add ability to run tests on various operating systems (#566)
      • Avoid a deprecated error from PHP8.1 (#573)
    Open source →
  27. 6.6.1 12 Dec 2022
    Release notes
    • Add PHPStan and fix level 1 errors (#307)
    Open source →
  28. 6.6.0 06 Dec 2022
    Release notes
    • Multi-byte character support for filename during output (#561). (#562)
      • Fix garbage collection (#509)
      • FIX: PDF417 corrupt output problem, solution set bcmath scale parameter to zero (#534)
      • Fix TypeError: count() in PHP8 (#556)
      • Fix-getHTMLFontUnits (#547)
      • Improved embedded image in HTML allowing src="data:..." format (#552)
      • Fix image abscissa when in RTL (#510)
      • fix: php 8.1 notices (#548)
      • Optimize PNG files (#563)
      • Update documentation for a known issue. (#569)
      • Fix for PHP 8.1 (#571)
    Open source →
  29. 6.5.0 12 Aug 2022
    Release notes
    • encodeUrlQuery takes into account the port (#493)
      • Fixing undefined offset error in writeHTML() when last DOM element ha…
      • correct some type hints (#495)
      • fix: php 8.1 notices (#481)
      • Fixed: null check for PHP 8.1 (#476)
      • Fix Infinite Loop in Multicell with Auto Page Breaks Off (#473)
      • GetCssBorderStyle Has Problem When !important Is Specified (#467)
      • Support Apache 2.4 directives in htaccess file (#530)
      • Remove examples from dist package (#542)
    Open source →
  30. 6.4.4 31 Dec 2021
    Release notes
    • PHP 8.1 fixes
    Open source →
  31. 6.4.3 28 Dec 2021
    Release notes
    • Fix MultiCell PHPDoc typehint (#407)
      • Fix type hint for \TCPDF_STATIC::_freadint (#414)
      • Footer and Header font phpdoc fixes + constructor $pdfa phpdoc fix + setHeaderData lw param fix (#402)
      • Fix text-annotation state options (#412)
      • Fix - Named links have been broken. This fixes. (#415)
      • Fixed type in comment for $lw header image logo width in mm
      • Change Set to set. Fixes #419 (#421)
      • Fix failing tests and failing tests not marking exit code as 1 (#426)
      • Fix phpdoc and prefer null as default value (#444)
      • Run on PHP 8.1 normally and add nightly PHP as allowed to fail (#452)
      • Fix AES128 encryption if the OpenSSL extension is installed (#453)
      • Explicitly cast values to int for imagesetpixel (#460)
      • Fix cell_height_ratio type (#405)
      • Leave   lowercase when using text-transform (#403)
    Open source →
  32. 6.4.2 20 Jul 2021
    Release notes
    • Fix PHP 8.1 type error with TCPDF_STATIC::pregSplit on preg_split
      • Fix a PHP array offset error
      • Fixed phpdoc blocks
      • Drop a PHP 4 polyfill and add a .gitattributes file
      • Added a test-suite
      • Removed pointless assignments
      • Fix docblock spelling error
      • Update version info
      • Fix color being filled to type 0 with PHP 8
      • Fix warnings for undefined tags for $lineStyle
      • Normalized composer.json
      • Allowed transparency in PDF/A-2 and PDF/A-3
      • Add a TCPDF composer example
      • Fixed implicit conversion from float to int for PHP 8.1
      • Removed status.txt from font directories, because of filesize
      • Fixed type hints
      • Removed "U" modifier from regexes
    Open source →
  33. 6.4.1 27 Mar 2021
    Release notes
    • Update tcpdf version (no code changes)
    Open source →
  34. 6.3.5 14 Feb 2020
    Release notes
    • Fixed curly braces in pdf417
      • Fixed a syntax error issue when accessing an index of a casted variable
    Open source →
  35. 6.3.4 12 Feb 2020
    Release notes
    • Check if imagekeys exist
      • Unlink only images in cache
    Open source →
  36. 6.3.3 12 Feb 2020
    Release notes
    • Fixed PHP 7.4 - cannot use array offset on integers
      • Fixed PDF/A-3B validation issue caused by missing pdfaSchema:property.
      • Removed backup changelog files from repo
      • Prevents the deletion of non-existent files in /tmp
      • Prevent crash in case of no list access in cache path
      • Check existence of file before delete it
      • Fixed erase users pictures
      • Fixed problem with $imagekeys undefined or unlinked
      • Fix SVGPath elliptical arc with rx/ry=0 + z should return to initial point
      • Fixed PHP 7.4 errors
      • handle integers for pages
      • Fixed background image doesn't work in RTL
      • Fixed PDF/A validity
      • Fixed datamatrix.php for PHP 7.4
      • Fixed deprecated PHP features
    Open source →
  37. 6.3.2 20 Sep 2019
    Release notes
    • Update ICC profile
    Open source →
  38. 6.3.1 20 Sep 2019
    Release notes
    • Fix reported version
      • Fix Undefined property: GLPIPDF::$imagekeys
    Open source →
  39. 6.3.0 19 Sep 2019
    Release notes
    • fix SpotColor handling in HTML
      • Add an additional empty test to prevent error in PHP 7.2
      • Fix the documentation how to calculate the cell height
      • Drop duplicated array indices
      • Fix TCPDF_STATIC::fileGetContents()
      • Introduce other version of pdfA (2 and 3)
      • Add UF and AFRelationship missing
      • Fix performance issue of cloned instances
      • Change glob to readdir which performs better
      • URI in PDF can result in E_NOTICE
      • Fix a warning for PHP 7.4
      • Fixed gradient offsets for percentage-based stops.
      • Fixed file_get_contents return value should also be checked for a non-empty string
      • Fix Array and string offset access syntax with curly braces is deprecated
      • Fix PHP Warning: chr() expects parameter 1 to be int
      • Add a VERSION file
    Open source →
  40. 6.2.26 16 Oct 2018
    Release notes
    • Update sRGB.icc with the one from the Debian package icc-profiles-free
      • Fix unsupported operand types error when codepoints arrays are merged
    Open source →
  41. 6.2.25 23 Sep 2018
    Release notes
    • Fix support for image URLs.
    Open source →
  42. 6.2.23 22 Sep 2018
    Release notes
    • Simplify file_exists function.
    Open source →
  43. 6.2.22 14 Sep 2018
    Release notes
    • Fixes on include/tcpdf_images.php, include/tcpdf_static.php and tcpdf.php about file handling
    Open source →
  44. 6.2.21 14 Sep 2018
    Release notes
    • no code changes
    Open source →
  45. 6.2.20 14 Sep 2018
    Release notes
    • Fix for security vulnerability: Using the phar:// wrapper it was possible to trigger the unserialization of user provided data.
    Open source →
  46. 6.2.19 14 Sep 2018
    Release notes
    • Merge various fixes for PHP 7.3 compatibility and security.
    Open source →
  47. 6.2.17 24 Feb 2018

    Nothing published for this version

  48. 6.2.16 19 Feb 2018

    Nothing published for this version

  49. 6.2.13 26 Apr 2017
    Release notes
    • IMPORTANT: A new version of this library is under development at https://github.com/tecnickcom/tc-lib-pdf and as a consequence this version will not receive any additional development or support. This version should be considered obsolete, new projects should use the new version as soon it will become stable.
    Open source →
  50. 6.2.12 12 Sep 2015
    Release notes
    • fix composer package name to tecnickcom/tcpdf
    Open source →
  51. 6.2.11 02 Aug 2015
    Release notes
    • Bug #1070 "PNG regression in 6.2.9 (they appear as their alpha channel)" was fixed.
      • Bug #1069 "Encoded SRC URLs in <img> tags don't work anymore" was fixed.
    Open source →
  52. 6.2.10 28 Jul 2015
    Release notes
    • Minor mod to PNG parsing.
      • Make dependency on mcrypt optional.
    Open source →
  53. 6.2.9 18 Jun 2015

    Nothing published for this version

  54. 6.2.8 29 Apr 2015
    Release notes
    • Removed unwanted file.
    Open source →
  55. 6.2.7 28 Apr 2015
    Release notes
    • Merged PR 17: Avoid warning when iterating a non-array variable.
      • Merged PR 16: Improve MuliCell param definition.
      • Improved column check (PR 15).
      • Merged PR 11: Use stream_is_local instead of limit to file://.
      • Merged PR 10: ImageMagick link on README.txt.
    Open source →
  56. 6.2.6 28 Jan 2015
    Release notes
    • Bug #1008 "UTC offset sing breaks PDF/A-1b compliance" was fixed.
    Open source →
  57. 6.2.5 24 Jan 2015
    Release notes
    • Bug #1019 "$this in static context" was fixed.
      • Bug #1015 "Infinite loop in getIndirectObject method of parser" was fixed.
    Open source →
  58. 6.2.4 08 Jan 2015
    Release notes
    • fix warning related to empty K_PATH_URL.
      • fix error when a $table_colwidths key is not set.
    Open source →
  59. 6.2.3 18 Dec 2014
    Release notes
    • New comment.
      • Moved the K_PATH_IMAGES definition in tcpdf_autoconfig.
    Open source →
  60. 6.2.2 18 Dec 2014
    Release notes
    • Fixed mispelled words.
      • Fixed version number.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive