property ObjectType[Index: Integer]: TObjectType; // read only
| Index | Zero-based page-object index, in the range 0 to ObjectCount - 1. |
ObjectType zwraca wartość wyliczenia TObjectType opisującą typ obiektu strony na Index:
otText — operator pokazujący tekst (Tj, TJ, ', ") — ciąg glifów współdzielących czcionkę i macierz tekstuotPath — ścieżka wektorowa: linie, krzywe, prostokąty i wypełnienia Użyj ObjectBounds, aby uzyskać prostokąt na stronieotImage — obraz rastrowy Połącz z ObjectBitmap, aby pobrać pikseleotShading — wzorzec cieniowania gradientowego albo opartego na funkcji (axial / radial / coon shading PDF)otForm — form XObject: wielokrotnie używany podstrumień, który sam może zawierać tekst, ścieżki i obrazyTa klasyfikacja jest stabilna i tania; wywoływanie jej w ciasnej pętli po ObjectCount to standardowy sposób wstępnej selekcji zawartości strony przed decyzją, który droższy accessor (ObjectBitmap, ObjectBounds, właściwości znaków) wywołać
Form XObjecty nie są przez tę właściwość rozwijane rekurencyjnie — typ zgłasza otForm, a wywołujący muszą zejść do własnej listy obiektów formularza, jeśli potrzebują zawartości liściowej
otText dla indeksów wykraczających poza prawidłowy zakres; zawsze zabezpieczaj się przez ObjectCountFPDF_PAGEOBJ_* PDFium z bazowego natywnego API
// Histogram typów obiektów na bieżącej stronie
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;