PDFium Component Docs

ObjectHandle Eigenschaft

Dieser API-Eintrag behält Bezeichner, Signaturen, Codeblöcke und PDF-Begriffe in ihrer Originalform.
Komponente: TPdf  ·  Unit: PDFium
Rohzeiger auf FPDF_PAGEOBJECT von PDFium für das angegebene Seitenobjekt, gedacht für direkte Aufrufe in die native PDFium-C-API

Syntax

property ObjectHandle[Index: Integer]: Pointer; // nur lesbar

Beschreibung

Gibt den undurchsichtigen FPDF_PAGEOBJECT-Zeiger zurück, den PDFium zur Identifikation des Seitenobjekts an Position Index auf der aktuellen Seite verwendet Derselbe Handle, den ObjectBounds, ObjectType und die anderen indizierten Objekteigenschaften intern auflösen, wird hier exponiert, damit fortgeschrittene Aufrufer Funktionen wie FPDFPageObj_*, FPDFPath_*, FPDFText_* oder FPDFImageObj_* verwenden können, die von der Komponente noch nicht umhüllt sind

Das Handle gehört der aktuellen Seite und bleibt nur gültig, solange die Seite geladen ist Das Aufrufen von ReloadPage, das Wechseln von PageNumber, das Entfernen des Objekts mit RemoveObject oder das Setzen von Active auf False macht jedes zuvor zwischengespeicherte ObjectHandle ungültig Rufen Sie FPDFPageObj_Destroy niemals auf einem Handle auf, das bereits an eine Seite angehängt ist — ein doppeltes Zerstören bringt PDFium zum Absturz

Verwenden Sie zuerst ObjectType, um nach der Art des Objekts zu verzweigen, auf das Sie zeigen, und casten und rufen Sie dann die passende Hilfsfamilie von PDFium auf Der Zeiger kann außerdem über Aufrufe innerhalb einer einzelnen Seitensitzung auf Identität verglichen werden, was nützlich ist, wenn Bearbeitungsvorgänge mit den daraus resultierenden Objekten abgeglichen werden

Parameter

Index0-basierter Seitenobjektindex, 0 ≤ Index < ObjectCount

Hinweise

Beispiel

// Den Blendmodus des ersten Objekts über die rohe PDFium-API lesen
uses PDFiumLib;
var Obj: FPDF_PAGEOBJECT;
var Blend: array[0..15] of AnsiChar;
begin
  Obj := Pdf1.ObjectHandle[0];
  if Assigned(Obj) then
    FPDFPageObj_GetBlendMode(Obj, @Blend[0], SizeOf(Blend));
  ShowMessage(string(Blend));
end;

Siehe auch

ObjectCount, ObjectType, ObjectBounds, UpdatePage, RemoveObject