property PageObjectSnapshotCacheCapacity: Integer; // read and write, default 8
Чтение PageObjectsSnapshot захватывает каждый объект страницы с его типом, границами, трансформациями, массивами штрихов, сегментами пути и клипа, марками содержимого, метаданными изображения и ограниченным текстом. Кэш держит один слот на страницу документа и удерживает завершённые снимки в порядке LRU до этой ёмкости, так что повторный осмотр объектов и анализ сложности переиспользуют один захват
Каждый удерживаемый снимок измеряется оценкой, покрывающей записи объектов, массивы штрихов, сегменты путей и клипов, марки содержимого с их параметрами, списки фильтров изображений и строки текста и шрифтов, и резервирует эту оценку в общем управляющем CacheBudgetBytes
Уменьшение ёмкости вытесняет наименее давно использовавшиеся снимки и немедленно возвращает их байты управляющему
Установка ёмкости в ноль очищает кэш и отключает удержание, при этом прямые ограниченные чтения через PageObjectsSnapshot и ReadPageObjectsSnapshot продолжают работать и просто захватывают заново при каждом обращении
Отрицательные значения возбуждают EPdfError
Незавершённый захват — тот, у которого Status.Completed равен False из-за исчерпания бюджета объектов, путей, клипов, марок, текста или строк — возвращается вызывающей стороне, но никогда не кэшируется
Pdf.PageObjectSnapshotCacheCapacity := 16;
Snapshot := Pdf.PageObjectsSnapshot[PageNumber];
LogObjectKinds(Snapshot.Objects);