property ObjectType[Index: Integer]: TObjectType;// solo lectura
| Index | Índice de objeto de página basado en cero, en el rango 0 a ObjectCount - 1 |
ObjectType devuelve un valor de enumeración TObjectType que describe el tipo de objeto de página en Index:
otText — operador de mostrar texto (Tj, TJ, ', ") — una secuencia de glifos que comparten fuente y matriz de textootPath — ruta vectorial: líneas, curvas, rectángulos y rellenos. Use ObjectBounds para obtener el rectángulo en la páginaotImage — imagen raster. Combine con ObjectBitmap para recuperar píxelesotShading — patrón de sombreado por degradado o función (sombreado axial/radial/coons de PDF)otForm — XObject de formulario: un subflujo reutilizable que puede contener a su vez texto, rutas e imágenesLa clasificación es estable y barata; llamarla en un bucle cerrado sobre ObjectCount es la forma estándar de clasificar el contenido de la página antes de decidir qué accesor más caro (ObjectBitmap, ObjectBounds, propiedades de carácter) llamar
Los XObjects de formulario no se expanden recursivamente por esta propiedad — el tipo reporta otForm y los llamadores deben descender a la propia lista de objetos del formulario si necesitan el contenido de nivel hoja
otText para índices fuera del rango válido; protéjase siempre con ObjectCountFPDF_PAGEOBJ_* de PDFium de la API nativa subyacente
// Histograma de tipos de objeto en la página actual
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;