THotPDF.GetProgressiveLinearizedLoadInfo Method
범위가 제한된 linearization 헤더를 검증하고 자체 완결적인 첫 페이지 범위를 알려 줍니다
선언
function GetProgressiveLinearizedLoadInfo(Source: THPDFRandomAccessSource; out Info: THPDFProgressiveLoadInfo): boolean;
유닛
HPDFDoc
매개변수
| 이름 | 목적 |
|---|---|
Source | 독립적으로 가용한 범위를 보고할 수 있는 random-access source |
Info | 검증된 linearization 오프셋, 범위 플래그, 상태, 진단을 받습니다 |
반환 값
필요한 범위가 아직 도착하지 않았더라도, 유효한 linearization 사전을 파싱했으면 True를 반환합니다
사용 참고 사항
- 범위가 제한된 헤더 탐색은 엄격한 페이지 범위 파서를 쓰며 /L, /H, /O, /E, /N, /T와 토큰 구조, 이를 감싸는 간접 객체를 검증합니다
- 첫 페이지 준비는 0 기반 섹션
[0, /E)만 요구하고 메인 cross-reference 꼬리에는 의존하지 않습니다 - 정상적인 짧은 읽기는 각 제한된 요청이 완료될 때까지 누적되며, 읽기 사이사이에 취소 여부를 확인합니다
- 이 메서드는 Source의 소유권을 가져가지 않습니다
임의 페이지 범위 계획
function PlanProgressiveLinearizedPageRanges(Source: THPDFRandomAccessSource; PageIndex: Integer; out Plan: THPDFLinearizedPageRangePlan): boolean; overload;
function PlanProgressiveLinearizedPageRanges(Source: THPDFRandomAccessSource; PageIndex: Integer; const Options: THPDFLinearizedPageRangeOptions; out Plan: THPDFLinearizedPageRangePlan): boolean; overload;
planner는 raw 또는 Flate로 된 1차·overflow hint stream을 디코딩하고, 요청한 페이지를 /P로 대응시키며, 완전한 bootstrap과 참조된 shared-object 그룹·cross-reference 데이터를 범위에 넣고, LF와 CRLF traditional-xref entry-0 접두를 받아들이고, 정렬된 최소 byte range를 반환합니다
첫 페이지 계획은 항상 자체 완결적인 [0, /E) 섹션을 쓰며 hint 디코딩을 요구하지 않습니다
기본값은 하나로 합친 shared-object 시퀀스를 가진 상호 운용 가능한 byte 정렬 행과 부속서 F가 기술하는 연속 MSB-first 분할 시퀀스를 받아들입니다. HintEncoding이 선택된 해석을 식별하고, 동등한 이중 해석은 명시적으로 남으며, 서로 충돌하는 해석은 fail-closed로 처리됩니다
AllowRowAlignedHints는 기본값이 True이고, 부속서 F 전용 검증을 할 때는 끌 수 있습니다
리소스 한도는 디코딩된 hint 바이트, 페이지 수, shared 그룹·참조, 범위 수, merge 간격, 계획된 총 바이트, planner 메모리를 다루며 기본 상한은 256 MiB입니다. 이 상한 안에서 검증할 수 없는 대체 hint 해석은 fail-closed로 처리되고, 한도·filter·hint·xref·가용성·페이지 인덱스 실패는 서로 다른 THPDFLinearizedPagePlanStatus 값을 가집니다