Version History for Docotic.Pdf
Version 9.9
May 15th, 2026
Core library
Added a free add-on for producing PDF/A-compliant documents. Try the BitMiracle.Docotic.Pdf.Conformance add-on.
Added a PDF/A group of code samples
Added the new CosDictionary.AddDictionary method.
Added the new PdfSignatureContents.GetMessageDigest method.
Added the new PdfWidget.Dictionary property. This property allows access to custom (application-defined) properties of the annotation.
The PdfDocument.CreateFont and PdfDocument.CreateFontFromFile methods now accept font data in raw CFF format, except for CIDFonts.
Added support for CFF fonts to DirectoryFontLoader and SystemFontLoader
The library no longer sets the non-standard properties XmpPdfSchema.Creator, XmpPdfSchema.CreationDate, and XmpPdfSchema.ModifiedDate when saving PDF documents.
The PdfDocument.SyncMetadata method now removes the non-standard properties XmpPdfSchema.Author, XmpPdfSchema.Creator, XmpPdfSchema.CreationDate, XmpPdfSchema.ModifiedDate, XmpPdfSchema.Subject, and XmpPdfSchema.Title. Since these properties are not part of the official XMP specification, their presence may cause different validation errors.
The library now returns PdfCustomAnnotation objects for annotation dictionaries that are missing a subtype.
The library now uses CFF bytes instead of PFB for Base14 fonts. This change improves compliance with the PDF/A standard and helps to produce smaller output files when Base14 fonts are embedded.
Breaking change: The PdfSaveOptions.ProducePdfA property is marked as obsolete. Instead, use the PdfDocumentConformanceExtensions.SaveAsPdfa methods from the new Conformance add-on.
Breaking change: The PdfaConformance enumeration and the PdfDocument.GetPdfaConformance method are marked as obsolete. Instead, use the PdfaConformanceLevel enumeration and the PdfDocumentConformanceExtensions.ReadPdfaConformance method from the new Conformance add-on.
Breaking change: The PdfxConformance enumeration and the PdfDocument.GetPdfxConformance method are marked as obsolete. Instead, use the PdfxConformanceLevel enumeration and the PdfDocumentConformanceExtensions.ReadPdfxConformance method from the new Conformance add-on.
Reduced memory consumption when parsing OpenType fonts.
Changed the merge process to use less memory, and for large documents fewer internal objects end up on the Large Object Heap (LOH).
Reduced the memory consumption of PdfDocument.DocumentsAreEqual methods. In addition, fewer internal objects created by these methods end up on the LOH.
Improved handling of PDFs with broken or incorrect structures.
Improved parsing of ICC profiles with incorrect offsets.
Improved embedding of CID fonts.
Improved loading of font bytes in DirectoryFontLoader and SystemFontLoader
PdfDocument.GetImages and PdfPage.GetImages now extract images from the control's normal icon.
PdfDocument.RemoveTransparencyGroups and PdfDocument.ContainsTransparencyGroups now take into account resources from Type3 fonts and form XObjects from annotation appearance streams.
PdfDocument.ReplaceDuplicateObjects now take into account resources from Type3 fonts.
Unexpected exceptions are no longer suppressed during stream decoding.
Fixed loading of font bytes from TTC files in DirectoryFontLoader and SystemFontLoader
Fixed bugs related to copying of PDF pages.
Fixed bugs related to drawing of PDF documents with CID fonts.
Fixed bugs related to drawing of text when embedded font bytes are invalid.
Fixed bugs related to drawing of PDF documents with annotations.
Fixed bugs related to drawing and flattening of text boxes, combo boxes, and list boxes.
Fixed bugs related to embedding of commercial OpenType fonts.
Fixed bugs related to extraction and rendering of soft mask images.
Fixed bugs related to incremental saving of documents.
Fixed bugs related to parsing of ICC profiles.
Fixed bugs related to replacing the contents of embedded files.
Fixed control renaming bugs when merging documents.
Removed the following methods, properties, and enumeration members, previously marked as obsolete: DirectoryFontLoader.Load(string, bool, bool), IFontLoader.Load(string, bool, bool), Pdf3dFileFormat.Unknown, Pdf3dProjection.Type PdfConfigurationOptions.StreamProvider, PdfDocument.AddColoredPattern(double, double), PdfDocument.AddColorProfile(byte[]), PdfDocument.AddColorProfile(Stream), PdfDocument.AddColorProfile(string), PdfDocument.AddFont(byte[]), PdfDocument.AddFont(byte[], bool, bool), PdfDocument.AddFont(byte[], bool, bool, bool, bool), PdfDocument.AddFont(PdfBuiltInFont), PdfDocument.AddFont(PdfBuiltInFont, bool, bool), PdfDocument.AddFont(Stream), PdfDocument.AddFont(Stream, bool, bool), PdfDocument.AddFont(Stream, bool, bool, bool, bool), PdfDocument.AddFont(string), PdfDocument.AddFont(string, bool, bool, bool, bool), PdfDocument.AddFontFromFile(string), PdfDocument.AddFontFromFile(string, bool, bool), PdfDocument.AddFontFromFile(string, bool, bool, bool, bool), PdfDocument.AddImage(byte[]), PdfDocument.AddImage(byte[], byte[]), PdfDocument.AddImage(byte[], PdfColor?), PdfDocument.AddImage(Stream), PdfDocument.AddImage(Stream, PdfColor), PdfDocument.AddImage(Stream, Stream), PdfDocument.AddImage(string), PdfDocument.AddImage(string, PdfColor), PdfDocument.AddImage(string, string), PdfDocument.AddUncoloredPattern(double, double, PdfColorSpace), PdfDocument.AutoCreateUriActions, PdfDocument.GetControl(string), PdfFileSpecification.SetCustomName(string, string?), PdfFont.Strikeout, PdfFont.SynthesizedBold, PdfFont.SynthesizedItalic, PdfFont.Underline, PdfGoToAction.View, PdfGoToAction.ViewName, PdfPaintedImageSavingOptions.Format, PdfRemoteGoToAction.View, PdfRemoteGoToAction.ViewName, PdfRenditionOperation.Unspecified, SystemFontLoader.Load(string, bool, bool).
HTML to PDF add-on
Updated to work with the current core library version.
Updated to use Chrome 147.0.7727.57.
Updated the Microsoft.Bcl.AsyncInterfaces dependency to version 10.0.3.
Updated the System.Text.Json dependency to version 10.0.3.
Added a dependency on Microsoft.IO.RecyclableMemoryStream.
Now the add-on automatically waits for custom fonts to load before generating the PDF.
Removed the following property, previously marked as obsolete: PdfPageOptions.TransparentBackground.
Layout add-on
- Updated to work with the current core library version.
Conformance add-on
- Initial version.
GDI add-on
Updated to work with the current core library version.
Updated the System.Drawing.Common dependency to version 10.0.8.
Removed the following methods, previously marked as obsolete: GdiFontLoader.Load(string, bool, bool), PdfDocument.AddFont(Font), PdfDocument.AddFont(string, FontStyle), PdfDocument.AddImage(Image), PdfDocument.AddImage(Image, Image), PdfDocument.AddImage(Image, PdfColor).
Logging add-on
Updated to work with the current core library version.
Updated the Microsoft.Extensions.Logging.Abstractions dependency to version 10.0.8.