프리플라이트 기반 객체 그래프 복구
RepairLoadedObjectGraphFromPreflightFindings는 요청된 구조 복구 범주만 이미 로드된 PDF에 적용하고, 제한된 재귀 검증을 거친 뒤 커밋합니다
선언
function RepairLoadedObjectGraphFromPreflightFindings(
const Findings: THPDFObjectGraphRepairKinds;
const Options: THPDFObjectGraphRepairOptions;
out Report: THPDFObjectGraphRepairReport): Boolean;
복구 범주
ogrXRef는 결정적인 전체 상호 참조 재작성을 예약합니다ogrTrailer는 로드된 루트와 information 참조를 일치시키고 전체 재작성을 예약합니다ogrCatalog는 고유하게 식별되는 catalog와 그 page tree 링크를 정규화합니다ogrPageTree는 노드 타입, 부모 링크, 자손 개수를 정규화합니다ogrNameTree는 고유 키와 자식 범위를 정렬하고 유효한/Limits배열을 다시 만듭니다
예산과 원자성
THPDFObjectGraphRepairOptions.Default는 검사할 객체 수, 재귀 깊이, 적용할 복구 수에 대한 한계를 공급합니다
변경 가능한 그래프 작업은 모두 트랜잭션으로 클론되고, 재귀적으로 검증되며, 커밋 전에 확정됩니다
순환 참조, 중복 객체 번호, 중복 name tree 키, 모호한 루트, malformed 자식, 예산 초과는 부분적인 그래프 변경을 발행하지 않고 실패합니다
저장
xref나 trailer 복구가 성공하면 평범한 전체 저장으로 발행해야 합니다. 증분 업데이트로는 신뢰할 수 없는 기존 상호 참조 구조를 대체할 수 없기 때문입니다
결과 보고서
THPDFObjectGraphRepairReport는 요청 및 적용된 범주, 복구 수, 검사 및 클론된 객체 수, 검증된 페이지 수, 롤백 상태, 상태 코드, 진단을 알려 줍니다
도입 버전: HotPDF v2.716.0