github py-pdf/fpdf2 2.8.5
Color font glyphs with color font palette selection, gradients, named destinations, PDF/A compliance verification...

one day ago

Added

  • documentation on how to combine fpdf2 with Bottle, CherryPy & Plone: link to documentation - thanks to @tanmayc07 and @Vidushi2709
  • basic support for SVG currentColor color value - cf. PR #1531 - thanks to @dlespiau
  • Porter–Duff compositing operations and bounding box support to the drawing API - cf. PR #1532
  • support gradients as fill or stroke colors in the drawing API - cf. PR #1539: link to documentation
  • support for gradient spread methods (PAD, reflect and repeat)
  • support for sweep (mesh) gradients
  • support for dashed lines in FlexTemplate elements - cf. issue #1503 - thanks to @dabell-cc
  • support for rendering color font glyphs in different formats (SBIX, CBDT/CBLC, SVG, COLRv0 and COLRv1) - cf. PR #1305
  • support for linking to named destinations - cf. issue #1545 - thanks to @RamBelitkar: link to documentation
  • native support for PDF/A compliance verification - including PDF/A-1B, 2B, 2U, 3B, 3U, 4, 4E and 4F: link to documentation. Accessible PDF/A documents (PDF/A 1A, 2A and 3A) are not yet supported.
  • unicode_range parameter for add_font() to restrict which unicode characters a font covers - cf. issue #1586 - thanks to @Malay-dev
  • variations parameter added in add_font() to allow the use of variable fonts - cf. issue #1544: link to documentation - thanks to @Rapteon
  • support for color font palette selection via a new palette parameter in add_font(), allowing users to choose alternate color palettes from color fonts (COLR/CPAL) and enabling different color schemes without embedding the font multiple times - cf. issue #1578, PR #1621 : link to documentation
  • added Ukrainian translation of the tutorial: українська - thanks to @ystepanoff
  • Python 3.14 is now officially supported

Fixed

  • preserving font table fvar to keep compatibility with variable fonts - cf. issue #1528
  • issue with Markdown when fallback fonts containing non-alphanumeric characters are used - cf. issue #1535
  • a bug with merging fragments of different types - cf. PR #1567 - thanks to @woopzz
  • updated destination page numbers of internal links when the ToC renderer spans multiple pages - cf. PR #1566 - thanks to @woopzz
  • GoTo action and add test for GoTo named destinations - cf. issue #1545
  • TableOfContents class missing cell clearance on spacing calculation - cf. issue #1582
  • rendering of round rectangles that caused visual distortions and incorrect filling - thanks to @Ai-Chetan - PR #1634

Changed

  • libtiff detection logic to maintain compatibility with pillow v12.

Removed

  • support for Python 3.9, that reached end-of-life in October 2025
  • the deprecated uni parameter from fpdf.add_font()
  • the deprecated dest parameter from fpdf.output()

Don't miss a new fpdf2 release

NewReleases is sending notifications on new releases.