THPDFXRefIntegrityInfo Record
cross-reference 테이블 건강 상태입니다. 항목 수, free 체인 상태, 잘못된 타입, 중복, shadowed 정의를 담습니다
선언
THPDFXRefIntegrityInfo= record
EntryCount: Integer;
FreeEntryCount: Integer;
FreeChainLength: Integer;
UnlinkedFreeEntryCount: Integer;
InvalidFreeLinkCount: Integer;
FreeCycleCount: Integer;
InvalidEntryTypeCount: Integer;
GenerationTransitionErrorCount: Integer;
DuplicateDefinitionCount: Integer;
ShadowedDefinitionCount: Integer;
DroppedShadowedDetailCount: Integer;
Valid: boolean;
Diagnostic: AnsiString;
ShadowedEntries: THPDFXRefShadowedEntryArray;
end;
유닛
HPDFDoc
필드
| 필드 | 목적 |
|---|---|
EntryCount | 병합된 cross-reference 섹션에 걸친 항목 총수. 0이면 integrity 데이터가 없다는 뜻 |
FreeEntryCount | free(type f)로 표시된 항목 수 |
FreeChainLength | 객체 0에서 도달하는 free-list 체인 길이 |
UnlinkedFreeEntryCount | 존재하지만 free 체인으로는 도달하지 못하는 free 항목 수 |
InvalidFreeLinkCount | /Next 방식 링크가 free가 아닌 항목을 가리키는 free 항목 수 |
FreeCycleCount | free 체인을 따라가는 동안 감지된 사이클 수 |
InvalidEntryTypeCount | 타입 바이트가 in-use도 free도 아닌 항목 수 |
GenerationTransitionErrorCount | generation 번호가 mod-65536 규칙을 깨는 in-use→free 전환 수 |
DuplicateDefinitionCount | 리비전에 걸쳐 두 번 이상 정의된 객체 번호 수 |
ShadowedDefinitionCount | 오래된 사본이 최신 리비전에 밀린 중복 정의 수 |
DroppedShadowedDetailCount | 전체 상세를 ShadowedEntries에 담지 못한 shadowed 항목 수 |
Valid | 병합된 테이블이 모든 구조 검사를 통과했으면 True |
Diagnostic | 발견된 첫 문제 클래스를 설명하는 텍스트 |
ShadowedEntries | shadowed 정의의 항목별 상세. 활성·shadowed 타입, 오프셋, generation, 리비전을 담음 |
사용 참고 사항
GetLoadedXRefIntegrityInfo로 채웁니다. 로드된 문서가 integrity 스캔을 만들지 않으면 false를 반환합니다FreeCycleCount와InvalidFreeLinkCount가 0보다 크면 증분 저장 전에 free list 수리가 필요하다는 뜻입니다ShadowedEntries는ShadowedDefinitionCount의 근거 기록입니다.THPDFXRefMergeInfo와 함께 보면 어느 리비전 우선순위가 최종 항목을 결정했는지 알 수 있습니다