Godot > Label
Label
概要
- Object > Node > CanvasItem > Control > Label
- Label は文字列を表示するためのノード派生クラス
- 1行だけでなく、途中で改行することで複数行を表示可能
- text プロパティに文字列を設定することで、画面にその文字列を表示できる
- 位置は rect_posision プロパティで参照・設定可能
- デフォルトでは動的にサイズ変更できないが、トゥルータイプフォントなどを指定することで可能になる
- デフォルトでは日本語文字を表示できないが、トゥルータイプフォントなどを指定することで可能になる
- 上下左右アライメントを指定可能
- 色属性プロパティは持たないが、add_color_override() で変更可能
シーンエディタでの操作
基本操作
- シーンタブ左上の「+」または「Ctrl + A」で「Node を新規作成」ダイアログを開き、Label を選択することで、
現ノードの子ノードとして Label を作成できる
- インスペクタで表示するテキストや、アライメント等を設定可能
- インスペクタの Text プロパティにテキストを入力すると、そのテキストが表示される
- スクショの様に、デフォルタオフォントでは日本語は非表示となる
- Align は左右揃え指定、Valign は上下揃え指定
- Clip Text が ON の場合は、領域からはみ出たテキストは非表示となる
- Visible Characters を指定すると、先頭から何文字を表示するかを指定可能
- Percent Visible を指定すると、先頭から全体の何%を表示するかを指定可能
- Max Lines Visible を指定すると、先頭から何行を表示するかを指定可能
フォントフェース・サイズ変更
Label のデフォルトフォントはビットマップでサイズ変更ができないので、サイズ変更可能な ttf または otf フォントに変更した方がよい。
その手順は以下の通りだ。
- トゥルータイプフォントを用意し、それをプロジェクトに追加する。
フォントを追加するには、下図のように用意したフォントを、シーンエディタ左のファイルシステム部分にドラッグ&ドロップするとよい。
- エディタ右側のインスペクタで、Custom Fonts を展開し、Font 左をチェックし、その右のドロップダウンメニューから「T 新規 DynamicFont」を選ぶ。
- 次が、知らないとちょっとわかりづらいのだが、Font の右の「T DynamicFont」部分をクリックすると、下図のようにフォントのプロパティが表示される。
- 次に、Font > Font 部分をクリックして展開し、Font Data の右端のドロップダウンアイコンをクリックし、「読込」を選ぶ。
- そうすると、下図のような「ファイルを開く」ダイアログが表示されるので、先にプロジェクトに追加した ttf ファイルを選択し、「開く」を押す。
これで、当該 Label のフォントが用意したものに置き換わる。
- 次に Font > Settings 部分をクリックして展開し、その最初の Size の部分でフォントサイズを指定することが可能だ。
なお、プロパティ等でフォントをボールドやイタリックにすることはできないので、
そのようにしたい場合はボールドやイタリックのフォントを用意しよう。
(※ もしかしたらシェーダを自分で記述すれば、そのような修飾が可能かもしれないが、現時点では筆者はその具体的方法を知らない)
スクリプトでの操作
まとめ