THPDFLinearizedPageRangeOptions Record
Budgets and switches for the progressive linearized range planner: bootstrap and cross-reference range inclusion, row-aligned hints, gap merging and hard caps on pages, groups, ranges and memory
Declaration
THPDFLinearizedPageRangeOptions= record
IncludeBootstrapRanges: boolean;
IncludeCrossReferenceRanges: boolean;
AllowRowAlignedHints: boolean;
MergeGapBytes: Int64;
MaximumHintBytes: Int64;
MaximumPageCount: Integer;
MaximumSharedGroups: Integer;
MaximumSharedReferences: Integer;
MaximumRanges: Integer;
MaximumPlannedBytes: Int64;
MaximumPlannerMemoryBytes: Int64;
class function Default: THPDFLinearizedPageRangeOptions; static;
end;
Unit
HPDFDoc
Fields
| Field | Purpose |
|---|---|
IncludeBootstrapRanges | Add the header and bootstrap byte ranges needed before any page can decode; by default true |
IncludeCrossReferenceRanges | Add the byte ranges of the main cross-reference section to the plan; by default true |
AllowRowAlignedHints | Accept interoperable row-aligned hint layouts whilst decoding; by default true |
MergeGapBytes | Merge two planned ranges when the gap between them is at most this many bytes; by default 0 (no merging) |
MaximumHintBytes | Refuse hint streams larger than this; by default 67108864 (64 MiB) |
MaximumPageCount | Refuse documents with more pages than this; by default 1000000 |
MaximumSharedGroups | Upper bound on shared-object groups planned; by default 1000000 |
MaximumSharedReferences | Upper bound on shared-object references planned; by default 4000000 |
MaximumRanges | Upper bound on emitted byte ranges per plan; by default 65536 |
MaximumPlannedBytes | Refuse plans whose total byte coverage exceeds this; by default 536870912 (512 MiB) |
MaximumPlannerMemoryBytes | Working-memory ceiling for the planner; by default 268435456 (256 MiB) |
Default | Class function handing back the values listed above |
Usage notes
- Start from
THPDFLinearizedPageRangeOptions.Default; the no-options overload ofPlanProgressiveLinearizedPageRangesapplies precisely these values - Clear
IncludeBootstrapRangesandIncludeCrossReferenceRangesto plan page-only ranges; that is how the progressive load probe sizes its header reads - Lower
MaximumPlannerMemoryByteson hosts with tight memory; the planner fails closed with a status and diagnostic instead of over-committing