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);

関連 API