HPDFResolveHeadlessTextLineOrderWithWorkspace

function HPDFResolveHeadlessTextLineOrderWithWorkspace(const Paragraph: UnicodeString;
  FirstUnit, UnitCount, MaximumUnits: Integer;
  CancellationToken: THPDFCancellationToken;
  ParagraphDirection: THPDFHeadlessTextDirection;
  Workspace: THPDFWorkspaceAdmission): THPDFHeadlessTextOrder;

Declared in HPDFHeadlessShaping

Resolves the selected physical line with its surrounding paragraph context and the same existing limits while sharing array, copy and compatible native-ordering admission

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 HPDFResolveHeadlessTextLineOrder for the unchanged input and output contract

See workspace admission and native runtimes for ledger categories and lifetime boundaries