THPDFLinearizedPagePlanStatus Type
Reports whether a linearized page byte-range plan succeeded and, when it did not, which planning stage failed
Declaration
THPDFLinearizedPagePlanStatus= (lppsSourceRequired,
lppsHeaderUnavailable, lppsNotLinearized,
lppsInvalidLinearization, lppsPageOutOfRange,
lppsHintUnavailable, lppsUnsupportedHintFilter,
lppsInvalidHintTable, lppsCrossReferenceUnavailable,
lppsInvalidCrossReference, lppsUnsupportedCrossReference,
lppsLimitExceeded, lppsRangesUnavailable, lppsReady);
Unit
HPDFDoc
Values
| Value | Purpose |
|---|---|
lppsSourceRequired | No source ranges were supplied, so planning has yet to start |
lppsHeaderUnavailable | The linearization header ranges are not yet available, so the linearization dictionary cannot be read |
lppsNotLinearized | The header parsed, but the document turns out not to be linearized |
lppsInvalidLinearization | The linearization dictionary or header did not pass validation |
lppsPageOutOfRange | The requested page index falls outside the linearized document |
lppsHintUnavailable | A primary or overflow hint stream range could not be read in full |
lppsUnsupportedHintFilter | The hint stream uses a filter the decoder does not provide |
lppsInvalidHintTable | The decoded hint table is malformed or ambiguous, for instance two interpretations that disagree |
lppsCrossReferenceUnavailable | A main cross-reference or cross-reference stream range needed by the plan is not yet available in the source |
lppsInvalidCrossReference | Cross-reference data did not pass validation, such as a probe that overruns the file or a malformed stream header |
lppsUnsupportedCrossReference | The cross-reference stream uses a representation the planner cannot handle, such as an indirect Length |
lppsLimitExceeded | A planner hint byte, range or memory budget ran out before the plan was completed |
lppsRangesUnavailable | The plan was built, but at least one planned byte range is not yet available in the source |
lppsReady | The plan is complete and every required range is to hand |
Usage notes
- Treat
lppsReadyandlppsRangesUnavailableas the only statuses carrying a usable range list; every other value is a diagnostic stop - The
Diagnosticstring ofTHPDFLinearizedPageRangePlanpairs with each non-ready status and says what the planner observed - Availability statuses can clear once more source bytes arrive, whilst the invalid statuses reflect a defect in the file itself