v5.0.0
This release contains new features, improvements and bug fixes.
- US-648 PDF linearization (Fast Web View) support: linearized writer, hint stream generation and
optimize.Linearizeconvenience API - US-1520 Linearization validator to verify Fast Web View compliance of PDF files
- US-1607 PDF/UA-1 (ISO 14289-1) validation and automatic compliance fixes via the new
pdfuapackage - US-1609 PDF/UA-2 (ISO 14289-2) validation and apply profile
- US-1610 PDF/UA-2 namespace-aware automatic tagging in the creator
- US-1606 PDF 2.0 structure namespaces support in the model
- US-1605 US-1618
pdfuaidXMP namespace support, includingpart/revandamd/corridentifiers - US-1549 ICC colorspace support
- US-1447 ICC color profile preservation when embedding images
- US-1504 Transparency groups with Multiply blend mode support
- US-1548 Color gradient support for
StyledParagraph - US-1629 List-box (choice field) appearance generation in the annotator
- US-1539
Direct()andEquals()methods for thePdfObjectinterface - US-1556 Opt-in writer
SkipObjectCopyfast path that skips the defensive deep copy of the source object graph
- US-1507 Refactored the parser/reader I/O layer from
io.ReadSeekertoio.ReaderAt, enabling safer concurrent reads - US-1536 Typed
PdfColorinterface instead of the empty interface - US-1541 Charcode/GID/rune separation in font handling for more correct text encoding
- US-1537 Exposed content types and fields for
StyledParagraph,GridandTable - US-1598 Faster text rendering with a glyph cache and blit fast path
- US-1597 Reduced render allocations with buffer pools and font-face caching
- US-1601 Bold/italic style matching when falling back to system fonts
- US-1611 Improved handling of long table cell content, including splitting of oversized row-spanning cells
- US-1561 Improved radial shading fill by omitting the bounding box that clipped the fill to the disc
- US-1631 All PDF date fields after the 4-digit year are now optional in
ParsePdfTime - US-1604 Replaced the unmaintained
go-xmplibrary with a maintained fork - US-1571 Replaced the archived
gorilla/i18ndependency with the internallinebreakpackage - US-1637 US-1672 Aligned the PDF/UA verifier with veraPDF and added a veraPDF validation test corpus
- US-1660 Fixed wrong font selection when two font dictionaries share the same
BaseFont - US-1676 Fixed form-field widget flattening when a page has no filtered annotations
- US-1670 Fixed creator table layout fidelity for row-spanning cells
- US-1546 Fixed multi-column row-spanning cells that cross page boundaries
- US-1612 Fixed blank/garbled rendering for CIDFontType2 fonts with a non-identity
CIDToGIDMap - US-1627 Fixed tagged-content ParentTree reachability in the structure tree
- US-1560 Neutralized stale linearization dictionaries when signing incrementally
- US-1538 Removed the deprecated
creator.Paragraphcomponent andCreator.NewParagraph; useStyledParagraphinstead - US-1535 Removed obsolete deprecated functions, including:
ContentStreamParser.ExtractTextandPageText.ToText— use theextractorpackage APIs insteadNewCompositePdfFontFromTTFFile/FromTTF/FromOTFFile/FromOTF— use the unified font loading APIs insteadPdfFont.CharcodesToUnicodeWithStats
- US-1536
PdfColoris now a typed interface — code relying on the previousinterface{}-based signatures may need updates
v4.11.0
This release contains improvements and bug fixes
- US-1571 Replaced archived https://github.com/gorilla/i18n dependency with maintained fork
- US-1629
GenerateAppearanceDictnot generating appearances for list-box (non-combo) choice fields fix - US-1631 NewPdfDate rejecting spec-valid dates that omit optional fields after the year (e.g. D:20260619, D:2026) fix
- US-1504 transparency groups and ExtGState blend modes not being honored when rendering PDF to image, causing overlays to drop out fix
- US-1546 MultiCell with rowspan > 1 causes broken cross-page rendering fix
- US-1611 Hang when table cells contain long content without row wrapping enabled fix
- US-1612 Renderer producing garbled or blank output for some embedded fonts fix
v4.10.0
This release contains new features, improvements, and bug fixes
- US-1358 High level function for
PdfField.GetProperties()to get the form field properties - US-1423 Capability to access Chapter info from header/footer generator
- US-1438 Text extraction grid mode
- US-1468 Add line height as a property of
TextChunk - US-1416 Make PDF font subset prefix deterministic to ensure reproducible output
- US-1398 Improve benchmark CI to auto-trigger in a release PR
- US-1384 PERF-02: Upgrade PdfObjectDictionary to sync.RWMutex
- US-1405 PERF-04: Use existing buffer pool in parser hot paths
- US-1406 PERF-05: Pool image decode buffers in encoders
- US-1409 PERF-08: Fix O(n²) removeWord in text extractor
- US-1433 PERF-12: Persist font cache across pages in renderer
- US-1463 PERF-15: Eliminate copyObjects() in PdfWriter
- US-1464 PERF-16: Optimize PdfAppender change detection
- US-1465 PERF-17: Streaming filter pipeline in core/encoding.go
- US-1466 PERF-18: Deduplicate streams during merge
- US-1436 PERF-20: Replace pixel loop in Image.Crop() with draw.Draw
- US-1383 PERF-01: PdfObjectDictionary.Remove() Race Condition fix
- US-1395 Fix and extend PDF object comparison methods
- US-1419 Benchmark CI ran every time the PR has new comment fix
- US-1420 Logging could causes huge memory usages fix
- US-1446 Renderer panics with index out of range on a PDF with a subsetted embedded font fix
- US-1453 Undetected regression in text shaping result fix
- US-1484 US-1444 mis-renders embedded TrueType subset fonts whose only cmap subtable is on Unicode platform 0 (PID=0) fix
v4.9.0
This release contains new features, improvements, and bug fixes
- US-1360 Merge PDFs using PDF Streams
- US-1370 Font subsetting support for OTF fonts
- US-1364
ReaderOptsaddParserAutoRepairoption to enable auto-repair of malformed PDFs during parsing
- US-200 Font file support for GSUB parsing into font parsing (ttfparser.go)
- US-1253 Merge TTF and OTF font processing as one
- US-1357 Update unidoc/typesetting version
- US-1365 Timestamp server test mockup
- US-1372
coretest coverage to 75% - US-1378
contentstreamtest coverage to 78% - US-1379
modeltest coverage to 60% - US-1380
rendertest coverage to 65% - US-1381
pdfutiltest coverage to 58% - US-1381
model/optimizetest coverage to 65% - US-1385 Pool
flate.ReaderInstances via sync.Pool
- US-1371 Extract text issue with ActualText replacement in TJ arrays fix
- US-1356 Data race in JBIG2 decoder causes OOM crash under concurrent PdfReaderLazy usage fix
- US-1252 Some text space is missing when rendering Arabic and Latin using OTF text shaping fix
- US-1387 Generated file 2_p_multi.pdf has error: The font 'FreeSans' contains bad /Widths in Adobe Reader fix
v4.8.0
This release contains improvement, security patch and bug fixes
- US-1325 Supported minimum Go version update to Go 1.24
- US-1333 [CVE-2023-36308] indirect use of
github.com/disintegration/imaging: crafted TIFF image can cause panic
- US-1349
extractortext matrix position miscalculation on text extraction due not synced parent CTM fix. - US-1350 PdfReader.GetPreviousRevision() panic fix
- US-1312 Splitting division to several pages hangs fix
- US-1321 OCR service integration retry request clone body payload fix
- US-1319 Test cases document signing with timestamping authority (TSA) fix
- US-1316 Github actions CI on lint fail fix
v4.6.0
This release contains new features, improvements and bug fixes.
- US-1244 Custom image interpolator setting in render PDF to image
- US-1232 Digital signature PAdES-LT support external signing
- US-1149 Tagging for `Chapter` component
- US-1150 Tagging for `Division` component
v4.5.0
This release contains new features, improvements and bug fix.
- US-1151 Add API integration with Tesseract OCR
- US-1197 Add support for rendering text using OTF font
- US-1178 Add PDF/A validation scripts for PDF/A-4 and it’s variants (PDF/A-4e and PDF/A-4f)
- US-1173 Add `PieceInfo` in Document catalog
- US-201 Support unicode segmentations before encoding the rune into charcodes
- US-1208 PDF/A-4 add testdata for 4F and 4E profiles into unipdf-testdata
- US-1209 PDF/A-4 add pdfaid rev support in PDF metadata
- US-1214 High memory usage when rendering PDF with large font size to image fix
v4.4.0
This release contains new features and improvements.
- US-1112 Add automatic document tagging in
creatorpackage - US-1136 Add utilities functions
PrintPdfObjects,ExtractPageRange, andMergePdf - US-1148 Add function to remove attributes in
PAdESLevelTsignature handler - US-1135 Add function for custom
http.ClientinNewEtsiPAdESLevelLT
- US-1164 Redaction package improvements: added standard patterns for SSN, email, phone number, and credit card
v4.3.0
This release contains new features, improvements and bug fixes.
- US-694 Tagging PDF contents
- US-697 Tagging a list elements
- US-1077 Tagging widget annotations
- US-1078 Tagging Grid component
- US-1069 Add support for RSASSA-PSS in pkcs7 and signature validation
- US-1098 GridRow: add new function GetHeight()
- US-1121 Supported go version for unipdf (1.23.0, 1.24.0 and 1.25.0)
- US-1005 Optimise memory usage in creator.AddPage for large or complex pages
- US-1079 Implements PdfAnnotations deep copy method
- US-1080 Investigates font encoding issue found during form flattening process
- US-1097 ECDSA key support for PAdES
- US-1101 Update golangci-lint version