NormalizeContentStreams

Оптимизация документов, потоки содержимого, производительность

Описание

Разбирает каждый слой содержимого страниц в выбранном диапазоне, приводит пробелы токенов и числовые формы к каноническому виду и сохраняет изменённые слои со сжатием Flate

Синтаксис

Delphi

Function TPDFlib.NormalizeContentStreams(Const PageRange: WideString= ''): Integer;

Параметры

PageRangeДиапазон страниц с нумерацией от 1, например 1,3,5-7, или пустая строка для всех страниц

Возвращаемые значения

Число слоев содержимого, чьи декодированные байты изменились, или 0, когда ни одному слою не требовалась нормализация, диапазон некорректен или каждый слой-кандидат провалил разбор

Примечания

Имена операторов, декодированные значения строк, текстовые операции и весь диапазон встроенного изображения от BI до EI остаются без изменений

Комментарии и избыточные пробелы удаляются, поскольку не влияют на семантику рисования PDF

Структурно некорректный слой остается побайтово идентичным, а сбои в одном слое не блокируют другие страницы

Abort между страницами и восстанавливает ранее выбранную страницуПовторный запуск метода идемпотентен и возвращает

0, когда каждый выбранный слой уже каноничен

Пример

ChangedLayers:= PDF.NormalizeContentStreams('1-20');
Writeln(ChangedLayers);

См. также

CompressContent, CompressPage, SetOptimizeContentStreams