EnumPageContentStatesEx
Манипуляция страницами
Описание
Отслеживает инструкции выбранной страницы и при необходимости спускается в содержимое Form XObject, используя состояние графики и область видимости ресурсов, активные на каждом операторе Do
Синтаксис
Delphi
Function EnumPageContentStatesEx(AfterInstruction: Boolean; MaxFormDepth: Integer; Var States: Array Of TPDFlibContentGraphicsState): Integer;Параметры
AfterInstruction выбирает снимки непосредственно после каждого оператора при истинном значении и непосредственно перед каждым оператором при ложном
MaxFormDepth выбирает число вложенных уровней Form для выполнения: ноль сохраняет только инструкции уровня страницы, а значения выше 64 ограничиваются числом 64
States
Возвращаемое значение
Общее число снимков, включая записи, не поместившиеся в States, или ноль, когда документ не выбран либо слой содержимого страницы не удается разобрать
Примечания
Вызовите один раз с пустым массивом, чтобы получить число, выделите назначение, затем вызовите снова для заполнения
Выполнение Form следует изоляции графического состояния, конкатенации матрицы формы, отсечению по /BBox и выбору текущих ресурсов
UseBlackPtComp выбирает число вложенных уровней Form для выполнения, где ноль оставляет только инструкции уровня страницы, а значения выше 64 ограничиваются 64Do получает столько записей, сколько помещается в предоставленный вызывающей стороной массив
Возвращаемое значениеОбщее число снимков, включая записи, не поместившиеся в /Resources, или ноль, когда документ не выбран либо слой содержимого страницы не может быть разобран
Повторяющиеся потоки Form декодируются и разбираются один раз за перечисление, а затем выполняются независимо для каждого вызова
Обнаружение циклов на активном пути и предел глубины предотвращают неограниченную рекурсию, не подавляя допустимое переиспользование из отдельных ветвей вызова
Когда AfterInstruction истинно, вложенные снимки предшествуют содержащему их снимку Do, поскольку оператор завершается после своих потомков; предшествующие снимки используют противоположный прямой порядок
FormTraversalStatus и FormDescendantCount сообщают, был ли каждый Form перечислен или пропущен, а поля вызова и родителя восстанавливают дерево вызовов