Документация PDFiumPas

Compressed Свойство

Эта запись API сохраняет идентификаторы, сигнатуры, блоки кода и термины PDF в исходном виде.
Компонент: TPdf  ·  Модуль: PDFium
Controls whether streams in the output PDF are FlateDecode-compressed when SaveAs / Save is called. The post-save compression engine scans the serialised PDF, replaces any uncompressed streams with their zlib-deflated equivalents, and rebuilds the xref table. Already-compressed streams pass through unchanged.

Синтаксис

property Compressed: Boolean; // default True

Описание

Compressed управляет тем, будет ли следующий SaveAs (и семейства) применять сжатие потока после записи. Когда True — значение по умолчанию — PDFiumPas сериализует документ через PDFium, а затем выполняет проход, который заменяет любые несжатые потоки содержимого / метаданных на эквиваленты, сжатые FlateDecode, и переписывает таблицу перекрестных ссылок с учетом новых смещений

Когда False, потоки вывода записываются как есть. Получившийся файл обычно в 2-10× больше, но его можно читать в текстовом редакторе, что полезно для отладки потоков содержимого, сравнения двух версий PDF с помощью diff, или передачи вывода в инструмент, понимающий синтаксис PDF и предпочитающий несжатый ввод

Установка Compressed меняет только поведение следующего сохранения; документ в памяти не затрагивается. Документ, загруженный в сжатом виде и сохраненный с Compressed := False, будет выведен в распакованном виде; документ, загруженный без сжатия и сохраненный с Compressed := True, будет выведен в сжатом виде Повторное сохранение полностью сжатого документа с Compressed := True дает почти идентичный размер файла — механизм распознает уже сжатые потоки и не сжимает их повторно

Примечания

Пример

// Save an uncompressed copy alongside the compressed original for debugging
begin
  Pdf.Active := True;
  Pdf.Compressed := True;
  Pdf.SaveAs('output.pdf'); // production copy
  Pdf.Compressed := False;
  Pdf.SaveAs('output_debug.pdf'); // human-readable copy
end;

См. также

SaveAs, Save, Active, Password