DestroyObject가 True이면 제거된 object는 제거 후 해제됩니다. page content stream은 자동으로 다시 생성됩니다procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True);
| Index | 정수. 제거할 page object의 0부터 시작하는 인덱스입니다(0부터 ObjectCount - 1까지) |
| DestroyObject | Boolean. True일 때(기본값) 기본 PDFium object는 제거 후 해제됩니다. 다른 page로 옮길 때처럼 object를 메모리 해제 없이 페이지에서 분리하려면 False를 전달하세요 |
RemoveObject는 현재 페이지에서 0부터 시작하는 인덱스로 page object를 삭제합니다. 유효한 인덱스 값은 0부터 ObjectCount - 1까지입니다. 호출 후 page content stream이 자동으로 다시 생성되므로 변경 사항이 즉시 반영됩니다
DestroyObject가 True일 때(기본값) 기본 PDFium object handle은 해제되고 메모리도 반환됩니다. False이면 object는 파괴되지 않고 페이지에서 분리만 되므로, 호출자가 handle의 소유권을 넘겨받는 다른 page로 object를 옮길 때 유용합니다
object를 제거하면 그 뒤에 있는 모든 object의 인덱스가 이동하므로, 루프에서 여러 object를 제거할 때는 가장 큰 인덱스부터 내림차순으로 순회하거나, 루프를 시작하기 전에 제거할 인덱스를 모아 두세요
// 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;