procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True);
| Index | Integer. 제거할 페이지 객체의 0 기반 인덱스입니다(0부터 ObjectCount - 1까지) |
| DestroyObject | Boolean. True(기본값)이면 제거 뒤 기반 PDFium 객체를 해제합니다. False를 넘기면 메모리를 풀지 않고 객체를 페이지에서 분리합니다. 예컨대 다른 페이지로 옮길 때 그렇게 합니다 |
RemoveObject는 0 기반 인덱스로 현재 페이지에서 페이지 객체를 삭제합니다. 유효 인덱스는 0부터 ObjectCount - 1까지입니다. 호출 뒤에는 페이지 콘텐츠 스트림이 자동으로 재생성되어 변경이 곧바로 반영됩니다
DestroyObject가 True(기본값)이면 기반 PDFium 객체 핸들이 해제되고 메모리가 반환됩니다. False이면 객체는 파괴되지 않고 페이지에서 분리만 됩니다 — 한 페이지에서 다른 페이지로 객체를 옮기면서 호출자가 핸들의 소유권을 가져갈 때 유용합니다
객체를 제거하면 뒤따르는 모든 객체의 인덱스가 당겨지므로, 루프에서 여러 객체를 지울 때는 주의하세요. 가장 큰 인덱스부터 내려가며 순회하거나, 루프 시작 전에 지울 인덱스들을 모아 두세요
// 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;