HPDFShapeHeadlessTextSpan

function HPDFShapeHeadlessTextSpan(const Context: UnicodeString;
  FirstUnit, UnitCount: Integer; const FontBytes: SysUtils.TBytes;
  MaximumGlyphs: Integer; CancellationToken: THPDFCancellationToken;
  CharacterAdvance: Double = 0; WordAdvance: Double = 0;
  ParagraphDirection: THPDFHeadlessTextDirection = htdAuto): THPDFHeadlessShapedGlyphs;

Yalnızca seçili bir UTF-16 span'ını, çağıranın gerçek OpenType yazı tipiyle şekillendirir; eksiksiz çevreleyen paragrafı HarfBuzz pre-context ve post-context olarak korurken

FirstUnit, sıfır tabanlı bir UTF-16 offset'tir ve UnitCount bir UTF-16 uzunluktur; hiçbir sınır surrogate çiftini bölememelidir ve sıfır-uzunluklu bir span glyph döndürmez

FriBidi, embedding düzeylerini eksiksiz paragrafdan çözer; HarfBuzz, çözülmüş script'i alır ve her görsel run içinde seçili öğeleri şekillendirir; Arapça birleştirme biçimlerini ve aynalanmış noktalamayı korur

Döndürülen SourceOffset değerleri seçili span'a göredir; UnicodeText, her gerçek seçili cluster'ı korur; glyph ilerlemeleri ve offset'leri 1000-birim yazı tipi koordinatları kullanır

CharacterAdvance, yalnızca Unicode yönsel kontrollerini içeren cluster hariç, şekillendirilmiş cluster başına bir kez uygulanır; WordAdvance bir U+0020 cluster'ına uygulanır; ikisi de sonlu olmalı ve Advance ile aynı koordinatları kullanmalıdır

ParagraphDirection, ilk güçlü karakteri orijinal paragrafdan farklı olan fiziksel sarılmış bir satırı şekillendirirken mevcut bir soldan-sağa veya sağdan-sola paragrafını koruyabilir

Mevcut girdi ve glyph bütçeleri, yazı tipi kapsam denetimleri, cancellation token ve native runtime bağımlılık gereksinimleri de bu fonksiyona uygulanır

Kısmi bir span, birleştirme bağlamını korur ama farklı stildeki bir combining işareti, başka bir yazı tipinden bir taban glyph'e karşı bağımsız konumlandırmaz; tek bir yazı tipi eksiksiz cluster'ı kapsıyorken tam cluster shaping kullanın

Bkz. HPDFShapeHeadlessText, HPDFResolveHeadlessTextOrder ve bağlamsal zengin metin appearance'ları