PDFium Delphi Component Docs

StructureElementsForPage vlastnost

Komponenta: TPdf  ·  Jednotka: PDFium
Vrací strom tagované struktury jedné stránky z mezipaměti jako ploché pole záznamů prvků

Syntaxe

property StructureElementsForPage[PageNumber: Integer]: TPdfStructureElements; // read only

PageNumberInteger. Index stránky v načteném dokumentu číslovaný od jedničky
ResultTPdfStructureElements. Pole záznamů TPdfStructureElement v pořadí průchodu dokumentem

Popis

První přístup ke stránce parsuje strom tagované struktury s limity TPdfStructureReadOptions.Default, totiž stejným průchodem, jaký používá ReadStructureElements, a vrátí prvky jako spravované záznamy nesoucí odkazy na úroveň a rodiče, řetězce typu a titulku, alternativní a skutečný text, jazyk, identifikátory marked content, atributy, tabulková fakta a odkazy na přidružené soubory

Každý přístup vrací hluboký klon, takže změna vráceného řetězce nebo pole nemůže změnit strom v mezipaměti ani dokument. Stránka bez tagované struktury dá prázdné pole

Dokončené stromy se uchovávají v ohraničené mezipaměti popsané StructureCacheCapacity a měří se vůči CacheBudgetBytes, takže opakovaná čtení téže stránky stojí jeden klon místo jednoho nativního průchodu

Poznámky

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

Neindexovaná vlastnost StructureElements přepošle aktuální stránku do tohoto vyhledání

Pro vlastní limity nebo streamovaného návštěvníka, který se vyhne sbírání všech prvků, použijte ReadStructureElements nebo VisitStructureElements

Příklad

Elements := Pdf.StructureElementsForPage[PageNumber];
for I := 0 to High(Elements) do
  if Elements[I].MarkedContentID >= 0 then
    LogMarkedContent(Elements[I].TypeName, Elements[I].Level);

Viz také

StructureCacheCapacity, StructureCacheCount, StructureTraversal, StructureElements, TPdfView.StructureElements