HPDFReorderHeadlessTextLine Function

以前に解決された段落レベルとスクリプトを使って物理行を並べ替えます。段落全体を解決し直すことなく、折り返しをまたいで明示的な方向状態を保持します

function HPDFReorderHeadlessTextLine(const Text: UnicodeString;
  const ParagraphOrder: THPDFHeadlessTextOrder; FirstUnit, MaximumUnits: Integer;
  CancellationToken: THPDFCancellationToken): THPDFHeadlessTextOrder;

完全な段落に対して HPDFResolveHeadlessTextOrder を 1 回解決してください。選択された行そのものを Text に、その 0 起点の UTF-16 段落オフセットを FirstUnit に渡します

呼び出し元は、一致する段落順序と変更されていない論理行テキストを供給する必要があります。関数は配列長・境界・埋め込みレベル・スカラー境界・キャンセルを検証しますが、キャッシュ記録から省かれたテキストを再構築することはできません

行の並べ替えは選択されたスカラーレベルだけをコピーし、ネイティブ FriBidi 経由で末尾空白のリセットと視覚並べ替えを適用し、行ローカルの UTF-16 配列を返します。共有段落レコードは変更しません

MaximumUnits は正の値で最大 131070 です。キャッシュされた完全な段落がこのバジェットに収まり、Text はセパレータを含まない有効な Unicode でなければなりません

リッチフィールド外観は論理段落ごとにこのキャッシュを使い、その後HPDFShapeHeadlessTextOrderedSpan で各スタイル項目を完全な物理行に対してシェーピングします