PDFium Delphi Component Docs

RemoveObject Метод

Компонент: TPdf  ·  Модуль: PDFium
Удаляет указанный page object с текущей страницы. Когда DestroyObject равно True, удалённый object освобождается после удаления. Поток содержимого страницы автоматически пересоздаётся

Syntax

procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True);

IndexInteger. Индекс удаляемого объекта страницы с нуля (0 до ObjectCount - 1)
DestroyObjectBoolean. Когда True (по умолчанию), базовый объект PDFium освобождается после удаления. Передайте False, чтобы отсоединить объект от страницы без освобождения памяти — например, при переносе его на другую страницу

Description

RemoveObject удаляет объект страницы с текущей страницы по его индексу с нуля. Валидные значения индекса — от 0 до ObjectCount - 1. После вызова content stream страницы автоматически перегенерируется, так что изменение видно сразу

При DestroyObject = True (по умолчанию) базовый дескриптор объекта PDFium освобождается вместе с памятью. При False объект просто отсоединяется от страницы, не уничтожаясь — это удобно при переносе объекта со страницы на страницу, когда владение дескриптором принимает вызывающий код

Поскольку удаление объекта сдвигает индексы всех последующих объектов, при удалении нескольких объектов в цикле будьте осторожны: итерируйте от наибольшего индекса вниз или соберите индексы к удалению до старта цикла

Example

// 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;

See Also

ObjectCount, ObjectType, AddPath