function ReadStructureElements(PageNumber: Integer; const Options: TPdfStructureReadOptions; out Status: TPdfStructureReadStatus): TPdfStructureElements;
반복적 전위 순회를 사용하며 안정적인 Level과 ParentIndex 값을 지닌 호출자 소유 평탄화 스냅샷을 반환합니다
각 TPdfStructureElement는 MarkedContentIDs, ChildCount, ChildMarkedContentIDs, AttributeCount로 계층 팩트를, HasHeaders, HeadersIds, ColSpan으로 표 구조를, 그리고 인쇄·참조 센티널인 HasPrintField와 HasReference를 보고합니다
역할 매핑은 RoleMappedNamespaceUri와 RoleMappedTypeName으로, 연관 파일은 HasAssociatedFile, AssociatedFileRelationship, AssociatedFileDescription, AssociatedFileDeclaredInCatalog, AssociatedFileDeclaredInStructure, AssociatedFileInEmbeddedFilesNameTree, AssociatedFileHasReadingOrder, AssociatedFileReadingOrderIndex로, 주석 팩트는 AnnotationSubtype, AnnotationContents, AnnotationAlternateText, IsArtifact, 위젯 센티널인 WidgetCount와 HasAppearance, 그리고 FieldAlternateName으로 노출됩니다
MaxDepth, MaxElements, MaxAttributeValues, DeadlineMilliseconds는 네이티브 작업과 관리 할당을 한정합니다
IncludeAttributes=False는 속성 값 생성을 건너뛰면서 구조 텍스트, 계층, MCID는 유지합니다
예산에 도달하거나 기한이 지나거나 방문자가 순회를 멈추면 Status.Completed는 false입니다
Status.ElementsVisited와 Status.AttributeValuesVisited는 수행된 작업을 세고, Status.DepthLimitReached, Status.ElementLimitReached, Status.AttributeLimitReached, Status.DeadlineReached는 어떤 예산이 순회를 멈췄는지 알려줍니다
function VisitStructureElements(PageNumber: Integer; const Options: TPdfStructureReadOptions; Visitor: TPdfStructureElementVisitor; out Status: TPdfStructureReadStatus): Integer;
완전한 페이지 배열을 할당하지 않으면서 각 요소마다 Visitor를 한 번 호출합니다
정상적인 조기 중단은 콜백의 KeepGoing 매개변수를 false로 설정하며 Status.VisitorStopped로 보고됩니다
각 콜백은 콜백이 반환된 뒤에도 보관할 수 있는 관리 요소 데이터를 받으며, 네이티브 구조 핸들은 노출되지 않습니다
property StructureElementsForPage[PageNumber: Integer]: TPdfStructureElements; // read only
임의의 1 기반 페이지를 PageNumber나 OnPageChange를 바꾸지 않고 읽습니다
기본 예산으로 완료된 결과는 StructureElements, TPdfView.StructureElements, 읽을 수 있는 콘텐츠, 리플로, 구조화 텍스트, 접근성 검증이 함께 쓰는 공유 LRU 캐시에 들어갑니다
중첩된 동적 배열과 속성 블롭은 깊게 복사되므로 반환된 스냅샷을 바꿔도 캐시나 PDF는 수정되지 않습니다
property StructureCacheCapacity: Integer; // read and write, default 8
최근사용순으로 유지되는 완전한 페이지 스냅샷의 개수를 제한합니다
용량을 0으로 설정하면 캐시된 스냅샷이 해제되고 이후 캐싱이 비활성화됩니다
음수 용량 값은 EPdfError를 발생시킵니다
property StructureCacheCount: Integer; // read only
property StructureCacheHitCount: Int64; // read only
property StructureCacheMissCount: Int64; // read only
컴포넌트 인스턴스의 누적 조회 텔레메트리를 노출합니다
편집은 누적 카운터를 보존하면서 해당 페이지 또는 캐시 전체를 무효화합니다
| MaxDepth | 256 |
| MaxElements | 100000 |
| MaxAttributeValues | 100000 |
| DeadlineMilliseconds | 0, 기한 없음 |
| IncludeAttributes | True |