VahidN / iTextSharp.LGPLv2.Core

iTextSharp.LGPLv2.Core is an unofficial port of the last LGPL version of the iTextSharp (V4.1.6) to .NET Core
Other
615 stars 154 forks source link

Improve SmartPdfCopy compression and performance #132

Closed asidorowicz closed 10 months ago

asidorowicz commented 10 months ago

While correcting a bug that caused an infinite loop in SmartPdfCopy when handling certain documents (https://github.com/VahidN/iTextSharp.LGPLv2.Core/issues/124), we have lost the ability to remove duplicate dictionaries.

This causes the document to become unnecessarily large when appending multiple documents that are based on the same template (eg: thousands of documents prepared for a print job)

These changes restore that capability, and prevent re-visiting the same nodes when detecting identical content, or already processed nodes, improving performance handling many streams/dictionaries (especially recursive)

what-the-diff[bot] commented 10 months ago

PR Summary