Download Latest Version 6.2.4 source code.zip (122.1 MB) Google Add to Preferred Sources
Home / 6.2.0
Name Modified Size InfoDownloads / Week
Parent folder
6.2.0 source code.tar.gz 2026-09-21 121.3 MB
6.2.0 source code.zip 2026-09-21 121.9 MB
README.md 2026-09-21 4.9 kB
Totals: 3 Items   243.2 MB 0

This release adds image fit and alignment controls, SVG rotation, CMYK output for SVG and barcodes, and Turkish UI support. It also fixes a large batch of long-standing rendering, Designer, and TypeScript issues.

New

  • Image fit and alignment: Image schemas support objectFit (contain / cover) and objectPosition (a 9-position grid, like CSS). Existing templates without these fields keep rendering as contain + center center. (#1630, closes [#696])
  • SVG rotation: SVG schemas can now be rotated in the Designer and in generated PDFs. (#1629)
  • CMYK for SVG and barcodes: When colorType: 'cmyk' is set, SVG fills, strokes, and text, and barcode colors are written as CMYK. PDFPage.drawSvg accepts an optional color mapper. (#1627, [#1628])
  • Barcodes as vectors: Barcodes and QR codes are drawn into PDFs as SVG vectors instead of embedded PNG images, so they stay sharp at any zoom. UI previews are unchanged. (#1628, closes [#460])
  • Designer updateTemplate target page: designer.updateTemplate(template, { page }) sets the active page after a programmatic update. Without the option, the current page is now preserved instead of jumping back to page 1. (#1625, closes [#1235])
  • Turkish: Add Turkish (lang: 'tr') to the UI and playground. (#1609)

Fixes

  • Page order in generated PDFs: Each page's schemas are rendered in array order, and schemas that share a name on the same page are all rendered. (#1626)
  • Line breaks: The Viewer and generated PDFs use the same line-wrapping rules (UAX [#14]), so text breaks at the same places on screen and in the PDF, including around quotes and colons. (#1615, closes [#1115])
  • Thai and Lao: Tone marks such as ไม้เอก (U+0E48) now render when a string starts with Latin or CJK characters. (#1614, closes [#1347])
  • Image orientation: JPEG/PNG EXIF orientation is applied before embedding, so photos are no longer upside down or sideways in PDFs. (#1617, closes [#1183])
  • SVG text fonts: Configured fonts are passed to SVG rendering, fixing WinAnsi encoding errors for non-Latin SVG text. (#1624, closes [#1433])
  • Rotated rectangles: Thick borders on rotated rectangles are placed the same in the PDF as in the UI, and no longer disappear at 90°. (#1622, closes [#382])
  • Barcodes in Web Workers: QR and barcode generation works in browser module Workers. (#1613, closes [#702])
  • Read-only multi-variable text: Renders the substituted text instead of the variable names. (#1611, closes [#1345])
  • Read-only tables: Use input[schema.name] when provided instead of always rendering the Designer sample data. (#1612, closes [#1299])
  • Static schema: Multi-variable text in basePdf.staticSchema no longer throws Text block not found, and static schema ids stay stable during a Designer session. (#1610, closes [#1296])
  • Designer size: Designer, Form, and Viewer no longer render at 0×0 when the container is off-screen or only partly visible. (#1607, closes [#1606])
  • Zoom scrolling: At high zoom, the viewer waits until the current page is mostly scrolled away before switching pages. (#1608, closes [#1240])
  • Undo/redo on non-US keyboards: Keep hotkeys-js at 4.0.4 or later so undo/redo is not swapped on layouts such as German QWERTZ. (#1621, closes [#1465])
  • TypeScript ≤ 5.6: Published typings use a named PdfBytes type, so Template inference no longer collapses to unknown. (#1623, closes [#1021])
  • Options: UI options are shallow-copied on construct and updateOptions, so later changes to the caller's object do not leak into the UI.
  • Website: Landing page cards wrap correctly on narrow screens. (#1620, closes [#929])

Dependencies and tooling

  • Update @testing-library/jest-dom to 7.0.1 and brace-expansion to 5.0.12.

Upgrade notes

This release keeps the public API backward compatible, but some generated PDFs may look different:

  • Barcodes are vectors now. The visual result is sharper, but the PDF no longer contains a PNG image for each barcode. If you post-process PDFs and look for barcode images, update that step. (#1628)
  • All same-name schemas on a page are rendered. Previously only one of them was drawn. Rendering order now follows each page's schemas array. (#1626)
  • Line breaks may move. Text in generated PDFs now wraps with the same rules as the Viewer, which can change where lines break and the height of dynamic content. (#1615)
  • Images with EXIF orientation are rotated correctly. If you rotated such images manually to work around the old behavior, remove that workaround. (#1617)
  • Read-only tables and multi-variable text use input values when they are provided, instead of the Designer sample content. (#1611, [#1612])

Full changelog: https://github.com/pdfme/pdfme/compare/6.1.13...6.2.0

Source: README.md, updated 2026-09-21