THPDFPage フォールバックおよび縦書きテキストメソッド
ドキュメントフォールバックチェーンまたはネイティブな縦書き CID 書き込みモードで Unicode テキストを出力します
宣言
procedure TextOutWithFallback(X, Y: Single; angle: Extended;
const Text: WideString);
procedure TextOutVertical(X, Y: Single; const Text: WideString);
function GetVerticalTextAdvance(const Text: WideString): Single;
メンバートピック
TextOutWithFallback
現在のフェイスをプライマリフォントとして使用し、各 Unicode スカラーを THotPDF フォールバックチェーンで解決し、同じ解決済みフェイスを持つ最大限の隣接ランを出力します
現在のスタイル、文字セット、サイズ、縦書き状態がすべてのフォールバックランに適用され、メソッドが戻る前に復元されます
未解決のスカラーはプライマリフェイスに割り当てられたままとなり、THotPDF.GetUnresolvedGlyphs に追加されます
TextOutVertical
現在のフェイスを IsVertical=True で一時的に選択し、完全なランを Identity-V を通じて書き込みます
出力される CID フォントは、OpenType の縦書き送り幅と起点が存在し有効な場合はそれを使用し、それ以外の場合は /DW2 と /W2 のデフォルトを使用します
GetVerticalTextAdvance
ページのユーザー空間単位で各 Unicode スカラーの縦書き送り幅の合計を返します
結果を使用して、後続のフォールバックラン、注釈、または並列縦書き列を配置します
例
PDF.CurrentPage.SetFont('Arial', [], 12);
PDF.CurrentPage.TextOutWithFallback(72, 72, 0, MixedText);
PDF.CurrentPage.SetFont('Yu Gothic UI', [], 14);
PDF.CurrentPage.TextOutVertical(420, 72, VerticalText);
NextY := 72 + PDF.CurrentPage.GetVerticalTextAdvance(VerticalText);