テキスト
nl.text ウィジェットの Self ノード——内容、タイポグラフィ、色、静的エフェクトの読み書きです
Text 分類は nl.text ウィジェットの Self ノード集合です。表示する文字列、表示に使う書体と字形の各種数値、そしてその上に重ねる静的エフェクトを扱います。これらのノードは nl.text 要素自身のブループリント(widgetMain または componentWidgetMain)のパレットにのみ現れ、いずれもその要素に対して作用します。nl.text を基にした 2 つのウィジェット、nl.dialog.sentence と nl.nvl.texts でも同じノードが提供されます。別のテキスト要素にアクセスするには、Element 分類にある同名の blueprint.element.text.* ノードを使用してください——プロパティは同一で、対象を指定するための element:nl.text 入力が追加されているだけです。
規約
- ターゲットピンはありません。 Self ノードには
Element入力がなく、ブループリントの実行元からターゲットを解決します。接続するものがない以上、誤った要素を指定してしまうこともありません。 - 読み取りは
Pure、書き込みはLatentです。 各 getter は副作用がありません。各 setter はホストがパッチを適用する間グラフを一時停止させます。 - Blueprint Value では使用できません。 Blueprint Value の宿主は
widgetValueであり、これらのノードのスコープはwidgetMainとcomponentWidgetMainであるため、getter が pure であっても、そのパレットには現れません。Blueprint Value からテキストのプロパティを読み取るには、Element を対象とした getter をElementのリテラルとともに使用してください。 - 書き込みにはゲームの実行が必要です。 ホスト API はブループリントの実行時の下でのみ存在します。エディターのキャンバス上では、setter は
This node runs only in a running game. Open Dev Mode to run it.(このノードはゲームの実行中にしか使えない。開発モードで実行する)で失敗し、getter は何も生成しません。 - 書き込んだ文字が優先されます。
Set Text、Append Text、Clear Text、そしてSet All Propertiesのtextピンがゲームの実行中に書き込んだ文字は、ページを開き直すまで、すべての言語で書き込んだとおりに表示され、翻訳キー、要素自身の文字の翻訳、Blueprint Value より優先されます。スクリプトレイヤーによる書き込みも同じです。最初の書き込みまでは、要素自身の文字がその既定値です。インターフェースのテキスト を参照してください。 - 何も変わらない書き込みは何もしません。 各 setter はパッチを正規化したうえで要素の現在のプロパティと比較し、一致する場合は早期に処理を終えます——その要素の再描画も
On Flushも発生しません。ただし初めて書き込む文字は例外で、画面上の文字と同じでも変更として扱われます。それ以降、その文字はすべての言語で書き込んだとおりに表示されるためです。getter も flush をキューに入れることはないため、グラフは自分自身をループに追い込むことなくプロパティをポーリングできます。 - 未接続または認識されない入力は「そのままにする」ことを意味しません。 エッジがない、カード上に何も入力されていない、あるいは許可された集合の外の値である場合、ほとんどの setter は現在の値を保持するのではなく、固定のフォールバック値を書き込みます。
Set Textは空文字列を、Set Fontはフォントをクリアし、Set Font Sizeは16を、Set Line Heightは1.4を書き込み、各列挙型 setter はそのリストの先頭の値を書き込みます。何も拒否されず、何もスローされません。現在の値にフォールバックするのは、Set Text Color、Set Effects、そしてSet All Propertiesのすべてのピンだけです。 - 一部のノードは同じ種類のノードとしてまとめられます。 パレットを一覧するとき、
Get FontからGet Effectsまでの 9 つのスタイル取得ノードは Get Text Style(文字のスタイルを取得)、対応する設定ノードは Set Text Style(文字のスタイルを設定)、Get VisibleとGet Enabledは Get Visible or Enabled(表示・有効状態を取得)、Set VisibleとSet Enabledは Set Visible or Enabled(表示・有効状態を設定)として、それぞれ 1 行で表示されます。検索すると各ノードが自分の名前で表示されます。配置したカードは、タイトルの横の ▾ で同じ種類の別のノードに切り替えられます。同じ種類のノードを参照してください。
Get Text
blueprint.text.getText · Pure
画面に表示されている文字を読み取ります。ゲームの実行中に書き込まれた文字、そうでなければ要素の翻訳キーの文字か要素自身の文字のプレイヤーの現在の言語でのテキスト、あるいは Blueprint Value やリストの行の項目が与える文字です。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
text | out · data | string |
Set Text
blueprint.text.setText · Latent
文字列全体を置き換えます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
text | in · data | string | 何にも解決できない場合は空文字列を書き込みます。カード上での直接入力に対応します。 |
Set Text が書き込んだ文字は、ソースが Translation key(翻訳キー)や Blueprint Value のテキストでも、ページを開き直すまですべての言語で書き込んだとおりに表示されます。翻訳した文字を表示するには、Get Text の結果を書き込み、プレイヤーが言語を切り替えたあとにもう一度書き込むか、Blueprint Value で表示してください。
Append Text
blueprint.text.appendText · Latent
画面に表示されている文字を読み取り、末尾に text を付けて書き戻します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
text | in · data | string | 区切り記号を挟まず、そのまま追加されます。カード上での直接入力に対応します。 |
Clear Text
blueprint.text.clearText · Latent
空文字列を書き込みます。何も接続していない Set Text と同じですが、カード上でその意図を明示します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — |
Get Font
blueprint.text.getFont · Pure
要素が使用しているプロジェクトのフォントアセットの id を読み取ります。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
fontAssetId | out · data | string | フォントアセットが未設定で、要素がキャンバスの既定書体を継承している場合は空文字列です。 |
Set Font
blueprint.text.setFont · Latent
要素をプロジェクトのフォントアセットに向けます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
fontAssetId | in · data | string | 空欄または解決できない値はフォントをクリアし、要素をキャンバスの既定書体に戻します。カード上での直接入力に対応します。 |
Get Font Size
blueprint.text.getFontSize · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
fontSize | out · data | float | Surface のデザインピクセルです。 |
Set Font Size
blueprint.text.setFontSize · Latent
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
fontSize | in · data | float | 下限は 1 にクランプされます。インスペクターの 8–256 の範囲はブループリントによる書き込みには適用されません。フォールバック値は 16 です。カード上での直接入力に対応します。 |
Get Font Weight
blueprint.text.getFontWeight · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
fontWeight | out · data | string | normal、600、bold のいずれかです。 |
Set Font Weight
blueprint.text.setFontWeight · Latent
字重は数値の CSS font-weight ではなく、3値の列挙型です。ここでの 700 は bold の同義語ではありません——許可された集合の外にあるため、normal にフォールバックします。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
fontWeight | in · data | string | normal、600、または bold です——"600" は文字列であり、数値ではありません。それ以外の値はすべて normal にフォールバックします。カード上での直接入力に対応します。 |
Get Text Color
blueprint.text.getTextColor · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
color | out · data | RGBAColor |
Set Text Color
blueprint.text.setTextColor · Latent
要素は色を CSS の色文字列として保持しており、これらのピンは双方向に変換します。そのためピンの型は string ではなく RGBAColor です。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
color | in · data | RGBAColor | カード上での直接入力はできません——Data の色の定数、または別のノードの RGBAColor 出力を接続してください。フォールバックは現在の色です。 |
Get Text Align
blueprint.text.getTextAlign · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
textAlign | out · data | string | left、center、right のいずれかです。 |
Set Text Align
blueprint.text.setTextAlign · Latent
要素のボックス内でテキスト行を水平方向に揃えます。ボックス自体の移動やサイズ変更は行いません。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
textAlign | in · data | string | left、center、または right です。それ以外の値はすべて left にフォールバックします。カード上での直接入力に対応します。 |
Get Text Vertical Align
blueprint.text.getTextVerticalAlign · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
textVerticalAlign | out · data | string | start、center、end のいずれかです。 |
Set Text Vertical Align
blueprint.text.setTextVerticalAlign · Latent
要素のボックス内でのテキスト行の配置を決めます。ボックス内でテキストを動かすものであり、ボックス自体のサイズは変更しません。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
textVerticalAlign | in · data | string | start、center、または end です。それ以外の値はすべて start にフォールバックします。カード上での直接入力に対応します。 |
Get Line Height
blueprint.text.getLineHeight · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
lineHeight | out · data | float | ピクセル距離ではなく、フォントサイズに対する単位のない倍率です。 |
Set Line Height
blueprint.text.setLineHeight · Latent
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
lineHeight | in · data | float | 倍率で、下限は 0.1 にクランプされます。フォールバック値は 1.4 です。カード上での直接入力に対応します。 |
Get Wrap Mode
blueprint.text.getWrapMode · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
textWrapMode | out · data | string | word、character、nowrap のいずれかです。 |
Set Wrap Mode
blueprint.text.setWrapMode · Latent
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
textWrapMode | in · data | string | word は単語の間で改行し、character は単語の内部でも改行し、nowrap は決して改行しません。それ以外の値はすべて word にフォールバックします。カード上での直接入力に対応します。 |
Get Effects
blueprint.text.getEffects · Pure
要素の静的エフェクトブロックを、常にすべてのフィールドが揃った1つの JSON オブジェクトとして読み取ります。
{
"effectBlur": 0,
"effectBackgroundBlur": 0,
"effectShadow": null,
"effectTextShadow": null,
"effectInnerShadow": null,
"effectBlend": "",
"effectGlow": null,
"effectFilter": null
}テキスト要素が反映するのは effectBlur、effectTextShadow、effectBlend、effectFilter だけです——影は CSS の text-shadow で描かれ、box-shadow 系のフィールドは chrome 系ウィジェットに属します。そのため、テキスト要素上では effectShadow、effectInnerShadow、effectGlow は常に null として読み戻されます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
effects | out · data | json |
Set Effects
blueprint.text.setEffects · Latent
エフェクトブロック全体を置き換えます——これはマージではないため、1つのフィールドだけを変えたい場合は、先に Get Effects で読み取ってからそのオブジェクトを編集してください。
box-shadow 系のフィールドへの書き込みが静かに失われるわけではありません。次に読み取ったとき、テキストシャドウが未設定であれば effectShadow(それもなければ effectGlow)が effectTextShadow に昇格し、box-shadow 系のフィールド自体は null として返ります。影自体は表示されますが、書き込んだキーの下ではありません。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
effects | in · data | json | 欠けているフィールドや形式が不正なフィールドは、現在のエフェクトではなく上記の既定値で埋められます。何にも解決できない場合のみ、全体が現在のエフェクトにフォールバックします。 |
Get All Properties
blueprint.text.getAllProperties · Pure
1枚のカードですべてのテキストプロパティを取得します。各出力は、対応する専用の getter が返すものとまったく同じ内容を運びます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
text | out · data | string | |
fontAssetId | out · data | string | フォントアセットが未設定の場合は空文字列です。 |
fontSize | out · data | float | |
fontWeight | out · data | string | |
color | out · data | RGBAColor | |
textAlign | out · data | string | |
textVerticalAlign | out · data | string | |
lineHeight | out · data | float | |
textWrapMode | out · data | string | |
effects | out · data | json |
Set All Properties
blueprint.text.setAllProperties · Latent
1回のパッチですべてのテキストプロパティを書き込むため、要素は10回ではなく1回だけ再描画されます。まず現在のプロパティを読み取り、それをすべてのピンのフォールバックとして使うため、これは唯一「ピンを未接続のままにすると現在の値が保持される」setter です——単一プロパティの setter とはちょうど逆になります。text を未接続かつ空のままにすると文字は書き込まれないため、翻訳キーやバインドを使うテキストはプレイヤーの言語に追従し続けます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
text | in · data | string | カード上での直接入力に対応します。 |
fontAssetId | in · data | string | 明示的に null を渡した場合もフォントはクリアされます。カード上での直接入力に対応します。 |
fontSize | in · data | float | 下限は 1 にクランプされます。カード上での直接入力に対応します。 |
fontWeight | in · data | string | normal、600、または bold です。カード上での直接入力に対応します。 |
color | in · data | RGBAColor | カード上での直接入力はできません。 |
textAlign | in · data | string | left、center、または right です。カード上での直接入力に対応します。 |
textVerticalAlign | in · data | string | start、center、または end です。カード上での直接入力に対応します。 |
lineHeight | in · data | float | 倍率で、下限は 0.1 にクランプされます。カード上での直接入力に対応します。 |
textWrapMode | in · data | string | word、character、または nowrap です。カード上での直接入力に対応します。 |
effects | in · data | json | カード上での直接入力はできません。 |
Get Visible
blueprint.text.getVisible · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
visible | out · data | boolean |
Set Visible
blueprint.text.setVisible · Latent
要素の visible プロパティを設定します。これは Displayable 分類の Set Display とは別のスイッチです。display は要素とそのサブツリーをマウントしたまま CSS で隠す実行時の描画スイッチであり、visible はインスペクターが公開しているレイアウト上の可視性プロパティです。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
visible | in · data | boolean | カード上での直接入力はできません——真偽値を接続してください。フォールバックは現在の値です。 |
Get Enabled
blueprint.text.getEnabled · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
enabled | out · data | boolean |
Set Enabled
blueprint.text.setEnabled · Latent
false は下層の操作無効化の仕組みに対応付けられます。生の interactionDisabled プロパティは作者には公開されていないため、このペアがそのインターフェースのすべてです。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
enabled | in · data | boolean | カード上での直接入力はできません——真偽値を接続してください。フォールバックは現在の値です。 |