procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True);
| Index | Integer. Nullbasierter Index des zu entfernenden Seitenobjekts (0 bis ObjectCount - 1) |
| DestroyObject | Boolean. Wenn True (Standard), wird das zugrunde liegende PDFium-Objekt nach dem Entfernen freigegeben. Übergeben Sie False, um das Objekt von der Seite zu lösen, ohne seinen Speicher freizugeben, etwa wenn es auf eine andere Seite übertragen wird |
RemoveObject löscht ein Seitenobjekt über seinen nullbasierten Index von der aktuellen Seite. Gültige Indexwerte reichen von 0 bis ObjectCount - 1. Nach dem Aufruf wird der Seiteninhaltsstrom automatisch neu erzeugt, sodass die Änderung sofort sichtbar wird
Wenn DestroyObject gleich True ist (Standard), wird das zugrunde liegende PDFium-Objekt-Handle freigegeben und sein Speicher freigegeben. Wenn es False ist, wird das Objekt nur von der Seite gelöst, ohne zerstört zu werden — das ist nützlich, wenn ein Objekt von einer Seite auf eine andere verschoben wird und der Aufrufer das Eigentum am Handle übernimmt
Da das Entfernen eines Objekts die Indizes aller nachfolgenden Objekte verschiebt, ist beim Entfernen mehrerer Objekte in einer Schleife Vorsicht geboten: Iterieren Sie vom höchsten Index abwärts oder sammeln Sie die zu entfernenden Indizes, bevor Sie die Schleife starten
// Das letzte Seitenobjekt entfernen
if Pdf1.ObjectCount > 0 then
Pdf1.RemoveObject(Pdf1.ObjectCount - 1);
// Alle Objekte vom höchsten Index abwärts entfernen
var I: Integer;
begin
for I := Pdf1.ObjectCount - 1 downto 0 do
Pdf1.RemoveObject(I);
end;