v26.10

Changed fields in PdfProperties

  • Field Created is DateTime (not DateTime?). Returns DateTime.MinValue if the document has no value.
  • Field Modified is DateTime (not DateTime?). Returns DateTime.MinValue if the document has no value.

Example Usage:

The example demonstrates how to Extract Properties (Created, Modified) from PDF file.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;

Added empty constructor to GetFieldNamesOptions

This can be useful in loop operations, without creating a new instance.

Example Usage:

var options = new GetFieldNamesOptions();
// Set input from a file
options.Input = new FileData("path_to_your_pdf_file.pdf");
// Or set input from a stream
// options.Input = new StreamData(stream);
var results = PdfForm.GetNames(options);

Removed class Splitter

  • The previous implementation of plugins is gradually being retired. The functionality of this class has been replaced by class PdfManager.
  • Class Splitter: removed, use PdfManager.

Example Usage:

The example demonstrates how to Split a PDF stream into individual pages and save them as files.

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file paths
options.AddOutput(new FileData("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file_2.pdf"));
// Perform the process
PdfManager.Split(options);

Example Usage:

This example demonstrates how to Split a PDF stream into individual pages and save them as streams.

// Prepare input and output streams
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream1 = new MemoryStream();
using var outputStream2 = new MemoryStream();

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input stream
options.AddInput(inputStream);
// Set output streams
options.AddOutput(outputStream1);
options.AddOutput(outputStream2);
// Prevent the closing of output streams
options.CloseOutputStreams = false;
// Perform the process
PdfManager.Split(options);

Removed class Merger

  • The previous implementation of plugins is gradually being retired. The functionality of this class has been replaced by class PdfManager.
  • Class Merger: removed, use PdfManager.

Example Usage:

The example demonstrates how to Merge two PDF documents.

// Create MergeOptions object to set instructions
var options = new MergeOptions();
// Add input file paths
options.AddInput(new FileData("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileData("path_to_your_pdf_file_2.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Merge(options);

Other fixes

🖥️ HTML to PDF

  • Fixed HTML to PDF conversion with many tables taking excessive time
  • Fixed HTML to PDF output not printing correctly in Chrome
  • Fixed HTML to PDF conversion missing table text content

🌐 PDF to HTML

  • Fixed PDF to HTML conversion missing text and graphics content
  • Fixed PDF to HTML conversion rendering a broken logo in the footer

📄 PDF to DOC/XLS

  • Fixed PDF to DOC conversion taking excessive time
  • Fixed PDF to Excel conversion producing incorrect output

🖼️ PDF to PNG

  • Fixed PDF to PNG conversion where text on the first page was distorted
  • Fixed PDF to PNG conversion throwing InvalidOperationException

🖼️ PDF to TIFF

  • Fixed PDF to TIFF conversion not converting all pages
  • Fixed PDF to TIFF conversion producing blacked‑out images

📑 PDF to PDF/A

  • Fixed PDF to PDF/A conversion adding white symbols to the output
  • Fixed PDF to PDF/A conversion changing rectangle border colors
  • Fixed PDF to PDF/A‑1b output failing preflight compliance test
  • Fixed PDF/A conversion producing invalid UTF‑8 BaseFont
  • Fixed PDF/A conversion changing visible text
  • Fixed PDF/A-2b conversion throwing ArgumentOutOfRangeException
  • Fixed PDF/A-2b conversion throwing NullReferenceException

📄 Document Operations

  • Fixed PDF merge throwing ArgumentException for an invalid key
  • Fixed flattening fields changing text orientation
  • Fixed incorrect text extraction from PDF documents
 English