Year 2023 Docotic.Pdf notices

Post about a year releases

Updated on December 31, 2023

This page contains all Docotic.Pdf release notices for year 2023.

Visit the Docotic.Pdf page for more information and download links. The full Version History for 2023 releases is also available.

We would appreciate if you let us know about your experience with the library. Your questions and feature suggestions are also welcome. Write us an e-mail or contact us via the support form. We love to hear from our users.

Nullable types and PDF marked content in Docotic.Pdf 9.2

December 7, 2023

Docotic.Pdf 9.2 is ready. We have released the library and its add-ons on our site and on NuGet.

Starting from this version, APIs of the library and all its add-ons support nullable reference types. This is to make it obvious which entities can be null and which are not. We also updated all our sample codes to take advantage of the change.

The new version brings the ability to create, extract and copy marked content. For example, it is possible to use layers within page content streams. And you can properly edit documents that use marked content. Please check the updated Edit PDF page content sample code to see how you can do this.

In version 9.2, we further improved the library memory-wise. Now fewer object collections inside the library can get to LOH. The library now uses less time and memory to copy or extract pages to a new document. We also reduced the amount of memory used to keep track of changed objects.

We implemented some important changes to the library add-ons.

The Layout add-on required .NET 6 before, but we made it compatible with .NET Standard 2.1. Now you can use the add-on from Unity, which is stuck at the older version of .NET at the moment.

The HTML to PDF add-on now uses Chromium 119.0.6045.105. There is also a breaking change: the add-on now uses transparent background color by default.

The GDI add-on now draws documents without color blending faster.

PDF 2.0 and multiple digital signatures in Docotic.Pdf 9.1

August 10, 2023

We have released Docotic on our site and on NuGet. This version can process files with PDF 2.0 features like UTF-8 strings.

Also, in response to our customer requests, we added the ability to save PDFs incrementally, without changing the source PDF data. The support for incremental updates is crucial when you need to update a signed document. Writing PDFs incrementally, you can sign the same document multiple times. This is because incremental updates do not invalidate digital signatures. Use the new PdfSaveOptions.WriteIncrementally option to save incrementally.

We have added new sample codes to illustrate how incremental updates work with digital signatures:

The new version adds the ability to read and modify XFA forms. In the PdfDocument class there are new Xfa property, CreateXfaForm and RemoveXfa methods for this.

We also put a lot of work into annotations and controls. Now it is possible to flatten PDF annotations. See PdfDocument.FlattenWidgets and PdfWidget.Flatten methods. There is now support for non-standard annotation types. New version can merge controls with the same full name when appending documents.

In the HTML add-on, we have added the ability to preserve structure information (accessibility tags) in the produced PDF. Use the new HtmlConversionOptions.PreserveStructureInformation property for this.

New PDF Layout API and memory optimizations in version 9

May 30, 2023

The shiny new Docotic.Pdf 9 is now available on our site and on NuGet. The new major release brings the new fluent PDF layout API and a lot of memory-related optimizations.

Many of our customers and prospects asked for a high-level layout API. These people want to add page headers and footers, tables, paragraphs, and automatically break content into pages. It is definitely an important API. With version 9, we introduce the new free Docotic.Pdf.Layout add-on with such API. Please read the overview article about the new API features.

We made a lot of changes in the library to reduce the number of memory allocations and the total amount of memory allocated. We still have a lot of ideas for improvements in this area, but Docotic.Pdf 9 allocates much fewer objects than previous versions. As the nice side-effect, it often works faster too.

The new version creates fewer objects in the Large Object Heap (LOH). And the library tries to reuse any memory it allocates. When reading, drawing, editing, or saving documents, the library reuses some of its intermediate structures. This reduces the total number of allocations and the memory footprint.

Docotic.Pdf 9 not only reuses allocated, it also allocates less when resizes an image or changes the way it compressed. The same goes for parsing fonts, saving documents with cross-reference tables, and other areas.



Visit our LinkedIn page | Telegram channel | Google Group