EnumPathElements

Extraction, manipulation de pages

Description

Énumère chaque objet de tracé vectoriel d’une page à travers toutes les couches de contenu. Chaque séquence de construction et de peinture de tracé est hissée dans un enregistrement TPDFlibPageElement de Kind ekPath, avec une boîte englobante incluant les points de contrôle des courbes, le nombre de segments, l’indicateur de fermeture et le nom de l’opérateur de peinture. Chaque élément reçoit aussi un instantané d’ElementID pour les requêtes de détail ultérieures

Syntaxe

Delphi

Procedure TPDFlib.EnumPathElements(Page: Integer;
  Var Elements: Array Of TPDFlibPageElement;
  Var ElemIndex, TotalCount: Integer);

Paramètres

PageNuméro de page en base 1 à énumérer
ElementsTableau alloué par l’appelant de TPDFlibPageElement qui reçoit les enregistrements ; seuls les enregistrements tenant dans la capacité du tableau sont stockés
ElemIndexIndex d’entrée-sortie ; passez 0 à l’entrée, en sortie il contient le nombre d’enregistrements stockés dans Elements
TotalCountCompteur d’entrée-sortie ; en sortie il contient le nombre total de tracés trouvés, même lorsqu’il dépasse la capacité de Elements

Remarques

Les coordonnées sont renvoyées dans le système à origine en haut à gauche qu’utilisent les assistants d’éléments de page. Comparez ElemIndex à TotalCount pour détecter une troncature, ou appelez deux fois et dimensionnez le tableau d’après la première passe

Pour une énumération de plus haut niveau couvrant aussi le texte, les images et les placements d’ombrage, voir EnumPageElements

Exemple

Total:= 0;
SetLength(Elements, 0);
PDF.EnumPathElements(1, Elements, Count, Total);
SetLength(Elements, Total);
Count:= 0; Total:= 0;
PDF.EnumPathElements(1, Elements, Count, Total);