procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True);
| Index | Integer. Index de base 0 de l’objet de page à supprimer (0 à ObjectCount - 1) |
| DestroyObject | Boolean. Lorsque True (par défaut), l’objet PDFium sous-jacent est libéré après la suppression. Passez False pour détacher l’objet de la page sans libérer sa mémoire, par exemple lors du transfert vers une autre page |
RemoveObject supprime un objet de page de la page courante par son indice à partir de zéro. Les indices valides vont de 0 à ObjectCount - 1. Après l'appel, le flux de contenu de la page est régénéré automatiquement afin que la modification soit reflétée immédiatement
Lorsque DestroyObject est True (par défaut), le handle d'objet PDFium sous-jacent est libéré et sa mémoire est relâchée. Lorsque False, l'objet est seulement détaché de la page sans être détruit — c'est utile lors du déplacement d'un objet d'une page à une autre, où l'appelant prend possession du handle
Comme la suppression d'un objet décale les indices de tous les objets suivants, faites attention lors de la suppression de plusieurs objets dans une boucle : itérez à partir de l'indice le plus élevé vers le bas, ou collectez les indices à supprimer avant de commencer la boucle
// Remove the last page object
if Pdf1.ObjectCount > 0 then
Pdf1.RemoveObject(Pdf1.ObjectCount - 1);
// Remove all objects from highest index downward
var I: Integer;
begin
for I := Pdf1.ObjectCount - 1 downto 0 do
Pdf1.RemoveObject(I);
end;