property ObjectCount: Integer; // read only
열린 PDF 문서에 묶인 페이지 객체(텍스트, 경로, 이미지, 셰이딩, 폼) 개수를 반환합니다. Page를 다른 페이지 인덱스로 대입하면 개수가 바뀌므로, 모든 ObjectHandle[Index]를 훑는 for 루프의 상한으로 쓸 수 있습니다
값은 기반 PDFium 엔진에서 직접 읽습니다(Active가 True이고 현재 페이지가 로드되어 있어야 함). 문서가 닫혀 있거나 조회 범위에 페이지 객체(텍스트, 경로, 이미지, 셰이딩, 폼)가 없거나 이 프로퍼티가 현재 PDF에 적용되지 않으면 결과는 0입니다
이 카운터는 PDFium이 첫 접근 때 느긋하게 계산하므로 첫 호출이 관련 오브젝트 스트림(예: 페이지의 /Annots 배열이나 문서의 /Names 트리) 파싱을 유발할 수 있습니다. 이후 호출은 O(1)입니다
Active가 False이거나 대응하는 PDF 딕셔너리 항목이 없으면 0을 반환합니다ObjectHandle[Index]를 읽을 때 유효 범위는 0 .. ObjectCount - 1로 취급하세요. 범위를 벗어난 인덱스는 EPdfError를 발생시킵니다
var
I: Integer;
begin
if not Pdf1.Active then Exit;
Memo1.Lines.Add(Format('%d page objects (text, path, image, shading, form)', [Pdf1.ObjectCount]));
for I := 0 to Pdf1.ObjectCount - 1 do
begin
// inspect each item
Memo1.Lines.Add(Format(' [%d]', [I]));
end;
end;