ノード一覧に戻る

テキストレイアウト

text_layout

文字列を画像化せずに glyph 配置済みのレイアウト構造へ変換します

確認済み
解説あり

入力ポート

名前説明
テキスト
text
Text
任意のテキスト入力。未接続時はテキストパラメータを使います。

出力ポート

名前説明
レイアウト
layout
TextLayout
後段の文字演出や画像化に使う構造化テキストレイアウト
文字数
character_count
Int
生成したレイアウトの文字数です(現在は glyph 数)

パラメータ

名前既定値範囲説明・選択肢
テキスト
text
Text
PixPipeline

Text 入力が未接続の時に使う文字列

フォント参照
source_mode
Enum
SystemFamily

文字レイアウトに使うフォントの参照方法

  • システムフォントSystemFamily
    この PC で使えるシステムフォントを使います
  • フォントファイルFontFile
    ローカルの TTF/OTF/TTC を一時読み込みしてすぐレイアウトを生成します
システムファミリ
system_family_name
Text
Segoe UI

システムフォントモードで使うファミリ名

フォントファイル
font_path
FilePath

ローカルの TTF / OTF / TTC ファイルパス

ファイル内ファミリ上書き
font_file_family_override
Text

コレクション用の任意ファミリ上書き。空欄ならフォントファイルから検出します。

フォールバック
fallback_family
Text
Arial

指定フォントを正確に解決できない時に使うフォールバックファミリ

文字サイズ
pixel_size
Int
244–256

ピクセル単位のフォントサイズ

字間
tracking
Int
0-16–64

文字ごとに追加する字間

行送り
line_height
Float
10.5–3 / step 0.05

フォントメトリクスに対する行送り倍率

揃え
align
Enum
Left

最長行から自動計算した幅の中で、短い行を横方向に揃えます

  • 左寄せLeft
  • 中央寄せCenter
  • 右寄せRight

概要

文字列を画像化する前の「文字配置データ」(TextLayout) に変換するノードです。 1文字ずつの位置を持った状態で下流に渡せるので、文字単位の演出 (1文字ずつ出現・波打ちアニメ)を挟んでから画像化できます。

使い方のポイント

  • 静止テキストを描くだけなら text_rasterize に直接つなぐ構成でよい。 このノードが要るのは文字単位で動かしたいとき: text_layout → text_reveal_by_glyph / text_animate_by_glyph → text_rasterize
  • フォントはシステムフォント名かローカルの ttf/otf ファイルを指定。 ドット絵ならビットマップ系フォントの font_path 指定がきれい
  • SystemFamily の名前と FontFile の上書き欄は別々に保持される。 通常のフォントファイルは上書きを空欄にして、ファイル内の名前を自動検出する
  • align は最長行の幅を基準に短い行を揃えるため、主に複数行テキストで違いが見える。 1行だけでは自動幅と行幅が同じなので、Left/Center/Right の見た目はほぼ変わらない
  • character_count 出力は「1文字あたりの進行度」計算に便利 (文字送り演出のタイミング設計に使う)

関連ノード

  • text_input — 文言の供給元
  • text_reveal_by_glyph / text_animate_by_glyph — 文字単位演出(このノードの主目的)
  • text_rasterize — 最終的な画像化
  • text_outline — 縁取り

技術詳細

  • TextLayout は wire-only formal type で、変数パネルから直接は作らない
  • フォントバイナリは保持せず、font reference + layout 結果のみを保存する
  • glyph 単位は現在 Rust text.chars() ベースの Unicode scalar 単位
  • character_count は現在 glyphs.len() をそのまま Int で出す
  • 色やアンチエイリアスや padding は持たず、後段の Text Rasterize v2 側が担当する

デバッグ表示

  • Inspector には 文字レイアウト(デバッグ) セクションが出ます
  • ここでは glyph ごとの index と bbox を確認できます
  • TextRevealByGlyphTextAnimateByGlyph の結果も、同じ TextLayout 出力として同じ表示で確認できます
  • translatescale はデバッグ用の近似 bbox で表示されます

使用例

[Text Input] -> [Text Layout] -> [Text Rasterize v2]
[Text Input] -> [Text Layout] -> [Text Reveal By Glyph]
[Text Input] -> [Text Layout]
                    └-> [文字数] -> [割り算] -> [1文字刻み進行度]
ノード一覧に戻る
テキストレイアウト — PixPipeline ノード解説