property ObjectType[Index: Integer]: TObjectType; // read only
| Index | Indice dell'oggetto pagina a base zero, nell'intervallo da 0 a ObjectCount - 1 |
ObjectType restituisce un valore di enumerazione TObjectType che descrive
il tipo di oggetto di pagina a Index:
otText — operatore di mostra-testo (Tj, TJ, ', ") — una sequenza di glifi che condividono font e matrice testootPath — path vettoriale: linee, curve, rettangoli e riempimenti. Usa ObjectBounds per ottenere il rettangolo sulla paginaotImage — immagine raster. Abbinalo a ObjectBitmap per recuperare i pixelotShading — pattern di shading a gradiente o a funzione (shading assiale/radiale/coon del PDF)otForm — form XObject: un sotto-stream riutilizzabile che può contenere a sua volta testo, path e immaginiLa classificazione è stabile ed economica; chiamarla in un ciclo serrato su
ObjectCount è il modo standard per fare triage del contenuto
della pagina prima di decidere quale accessore più costoso chiamare (ObjectBitmap,
ObjectBounds, proprietà dei caratteri)
I Form XObjects non vengono espansi ricorsivamente da questa proprietà — il tipo
riporta otForm e i chiamanti devono scendere nell'elenco di oggetti della form
se servono i contenuti di foglia
otText per gli indici fuori intervallo valido; proteggiti sempre con ObjectCountFPDF_PAGEOBJ_* di PDFium dell'API nativa sottostante
// Histogram of object types on the current page
var
I: Integer;
Counts: array[TObjectType] of Integer;
T: TObjectType;
begin
FillChar(Counts, SizeOf(Counts), 0);
for I := 0 to Pdf.ObjectCount - 1 do
Inc(Counts[Pdf.ObjectType[I]]);
for T := Low(TObjectType) to High(TObjectType) do
Memo1.Lines.Add(Format('%s: %d', [GetEnumName(TypeInfo(TObjectType), Ord(T)), Counts[T]]));
end;