HPDFShapeHeadlessTextWithWorkspace
function HPDFShapeHeadlessTextWithWorkspace(const Text: UnicodeString;
const FontBytes: SysUtils.TBytes; MaximumGlyphs: Integer;
CancellationToken: THPDFCancellationToken;
MaximumLineAdvance: Double; CharacterAdvance: Double;
WordAdvance: Double;
Workspace: THPDFWorkspaceAdmission): THPDFHeadlessShapedGlyphs;
Declared in HPDFHeadlessShaping
Shapes and optionally wraps complete text using the existing paragraph and advance rules while carrying one owner through bidi ordering, temporary text, glyph arrays and compatible native shaping
Borrowed admission
Workspace is a borrowed THPDFWorkspaceAdmission; keep it alive for the entire call and do not reset its cumulative ledger during a failed attempt or retry
Pass nil to retain the original call behavior without a borrowed workspace; the original function signature remains available
Admission occurs before the implemented allocations or generated identities; bounded copy and operation checkpoints can also call Reserve(0)
An exception raised by the owner remains the operation failure; cleanup must remain possible after cancellation and must not replace that exception
A non-nil workspace requires the selected native shaping or ordering library to expose the compatible workspace allocator ABI; ordinary libraries remain usable by the original nil-workspace path
Native callbacks retain their original Pascal exception and return failure to C; the caller rethrows the retained exception after the native call returns
The returned arrays own their managed storage and can be released after the admission owner is destroyed; they do not retain a callable borrowed owner
See HPDFShapeHeadlessText for the unchanged input and output contract
See workspace admission and native runtimes for ledger categories and lifetime boundaries