Added
- documentation on how to combine
fpdf2with Bottle, CherryPy & Plone: link to documentation - thanks to @tanmayc07 and @Vidushi2709 - basic support for SVG
currentColorcolor 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_rangeparameter foradd_font()to restrict which unicode characters a font covers - cf. issue #1586 - thanks to @Malay-devvariationsparameter added inadd_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
paletteparameter inadd_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
fvarto 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
libtiffdetection logic to maintain compatibility with pillow v12.
Removed
- support for Python 3.9, that reached end-of-life in October 2025
- the deprecated
uniparameter fromfpdf.add_font() - the deprecated
destparameter fromfpdf.output()