v26.8

Класс SignOptions переработан

  • Теперь им проще пользоваться.
  • Наследуется от класса OptionsWithInputAndOutput.
  • Свойства Inputs и Outputs изменены на Input и Output. Теперь имеется только один вход и один выход.
  • Если вывод — файл, его поток будет закрыт автоматически, но если это Stream, он останется открытым для дальнейшего использования.
  • Удалены методы AddInput, AddOutput.
  • Добавлено несколько более удобных конструкторов:
    • SignOptions(IData inputData, IData outputData, IData pfxData, string password)
    • SignOptions(string inputFile, string outputFile, string pfxFile, string pfxPassword)
    • SignOptions(Stream inputStream, Stream outputStream, Stream pfxStream, string pfxPassword)
  • Добавлены изменяемые свойства:
    • Stream Pfx
    • string PfxPassword
    • IData Input
    • IData Output

Пример использования

using var pfxStream = File.OpenRead(@"path_to_your_pfx_file.pfx");
var options = new SignOptions(pfxStream, "password_of_your_pfx_file");

// Set input and output file paths
options.Input = new FileData("path_to_your_pdf_file.pdf");
options.Output = new FileData("path_to_result_pdf_file.pdf");

Пример использования

PdfSecurity.Sign(new SignOptions(
    "path_to_your_pdf_file.pdf",
    "path_to_result_pdf_file.pdf",
    "path_to_your_pfx_file.pfx",
    "password_of_your_pfx_file"));

Пример использования

// Prepare streams
using var pdfStreamInput = File.OpenRead(@"path_to_your_pdf_file.pdf");
using var pfxStreamInput = File.OpenRead(@"path_to_your_pfx_file.pfx");
using var pdfStreamOutput = new MemoryStream();

// Create SignOptions object to set instructions
var options = new SignOptions(pdfStreamInput, pdfStreamOutput, pfxStreamInput, "password_of_your_pfx_file");

// Perform the process
PdfSecurity.Sign(options);

Удалён класс Signature

  • Предыдущие реализации плагинов постепенно выводятся из эксплуатации. Функциональность этого класса заменена классом PdfSecurity.
  • Class Signature: удалён, используйте PdfSecurity.

Пример использования

// Create SignOptions object to set instructions
var options = new SignOptions(
    "path_to_your_pdf_file.pdf",
    "path_to_result_pdf_file.pdf",
    "path_to_your_pfx_file.pfx",
    "password_of_your_pfx_file");

// Perform the process
PdfSecurity.Sign(options);

Удалён класс FormExporter

  • Предыдущие реализации плагинов постепенно выводятся из эксплуатации. Функциональность этого класса заменена классами PdfExtractor и PdfForm.
  • Class FormExporter: удалён, используйте PdfExtractor или PdfForm.

Пример использования

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);

// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));

// Set output file path
options.AddOutput(new FileData("path_to_result_csv_file.csv"));

// Perform the process
PdfExtractor.Extract(options);

Пример использования

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions();

// Set delimiter
options.Delimiter = '\t';

// Add field names to result
options.AddFieldName = true;

// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));

// Set output file path
options.AddOutput(new FileData("path_to_result_csv_file.tsv"));

// Perform the process
PdfForm.Extract(options);

Улучшенный класс FileData

  • Переопределён метод ToString().

Другие исправления

📄 PDF to DOC

  • Исправлена слишком длительная конверсия PDF в DOC.

🌐 PDF to HTML / HTML to PDF

  • Исправлена конверсия PDF в HTML, которая создавала прозрачные изображения.
  • Исправлена конверсия HTML в PDF, при которой содержимое накладывалось друг на друга.
  • Исправлена конверсия HTML в PDF, при которой игнорировалась ширина таблицы.

🖼️ PDF to PNG / TIFF

  • Исправлена конверсия PDF в PNG, потреблявшая чрезмерную память.
  • Исправлена конверсия PDF в PNG, не сохраняющая встроенные шрифты.
  • Исправлена конверсия PDF в TIFF, вызывавшая исключение.

📑 PDF to PDF/A

  • Исправлена конверсия PDF в PDF/A, теряющая цвета документа.
  • Исправлена конверсия PDF в PDF/A, при которой текст накладывался в результирующем файле.
  • Исправлен метод Validate() в конверсии PDF в PDF/A, возвращающий неправильные результаты.
  • Исправлена проверка PDF/A, выдающая некорректные результаты.

📂 Other Operations

  • Исправлено бросание System.FormatException при проверке подписи PDF.
  • Исправлено бросание исключения при объединении документов.
13 авг. 2026 г.
 Русский