PDFium Delphi Component Docs

PageObjectsSnapshot vlastnost

Komponenta: TPdf  ·  Jednotka: PDFium
Vrací cacheovaný ohraničený snímek všech objektů na jedné stránce jako spravované records

Syntaxe

property PageObjectsSnapshot[PageNumber: Integer]: TPdfPageObjectsSnapshot; // read only

 

type TPdfPageObjectsSnapshot = record
  PageNumber: Integer;
  Width: Double;
  Height: Double;
  Status: TPdfPageObjectSnapshotStatus;
  Objects: TPdfPageObjectSnapshots;
end;

PageNumberInteger. Index stránky číslovaný od jedničky v rámci načteného dokumentu
StatusTPdfPageObjectSnapshotStatus. Příznak dokončení, počty navštívených objektů a rozpočtové příznaky, které se dosáhlo
ObjectsRecords jednotlivých objektů s typem, hranicemi, transformací, barvami, poli čárkování, segmenty cest a ořezových cest, značkami obsahu, obrazovými metadaty a ohraničeným textem

Popis

Při prvním přístupu ke stránce se snímek zachytí s rozpočty TPdfPageObjectSnapshotOptions.Default. Aktivní stránka se čte přes její načtené handle a každá jiná stránka se přechodně načte a zase zavře, aniž by se změnilo PageNumber nebo spustilo OnPageChange

Každý přístup vrací hlubokou kopii, takže změny ve vnořených polích čárkování, parametrech značek, segmentech cest, ořezových cestách, filtrech nebo řetězcích nemohou pozměnit data v cache ani dokument

Dokončené snímky se uchovávají v ohraničené cache popsané vlastností PageObjectSnapshotCacheCapacity a účtované proti CacheBudgetBytes a PageComplexity tuto cache znovu využívá pro typy objektů, počty cest, pixely obrázků a průhlednost

Poznámky

Volání bez aktivního dokumentu vyvolá EPdfError a PageNumber mimo rozsah 1 až PageCount vyvolá EPdfError se zprávou Incorrect page number

ReadPageObjectsSnapshot použijte pro vlastní rozpočty zachycení nebo když chcete cache záměrně obejít

Příklad

Snapshot := Pdf.PageObjectsSnapshot[PageNumber];
for I := 0 to High(Snapshot.Objects) do
  if Snapshot.Objects[I].ObjectType = otImage then
    LogImageObject(I);

Viz také

PageObjectSnapshotCacheCapacity, PageObjectSnapshotCacheCount, PageObjectSnapshots, PageObjectInfo, PageComplexity