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 Pfxstring PfxPasswordIData InputIData 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. - Исправлено бросание исключения при объединении документов.