harunatu
(Harunatu)
1
WBP内のテキストにてAutoWrapTextを使用すると末尾の改行の挙動がおかしくなる時があります。こちら仕様またはバグでしょうか。
対処法の候補としてReplaceを使用しての手動改行を検討しています。
テキスト表示が実行されるたびにBoxSizeの任意の数値を超えたらAutoWrapTextする処理を組んだのですが改善されませんでした。
WBP内ヒエラルキーのレイヤー構成がHorizontalBox内にRichTextをFillにて配置しています
HorizontalBoxのX軸の最大値に達したら自動で改行されつつ不自然な末尾の挙動をなくせるのが理想です。
どなたか対処法などご存知方がいらっしゃれば幸いです。
よろしくお願いいたします。
T_Sumisaki
(T_Sumisaki)
2
仕様かと思います
1文字ずつ表示しているためにそういう挙動になっているだけで、最終的な結果から見ると、AutoWrapの結果は正しく見えます
1文字ずつ表示する場合にそのブレを無くすには、AutoWrapではなく前処理で対応するか、文字数ベースで改行を挿入したほうが良いと思います
1 Like
harunatu
(Harunatu)
3
お返事ありがとうございます。
AutoWrapの状態に関して理解しました。
前処理で行う場合はReplaceの設定をもとにデータテーブルから改行を行おうと思います。
文字数ベースで処理を組みたい場合、文字をカウントして分岐を組むとこまで想像できるのですが改行処理はどのように行えばいいのでしょうか?
T_Sumisaki
(T_Sumisaki)
4
表示済みの文字列を保存してある場合は、表示している文字数を数えておき、「表示済み文字数が1以上、かつ表示済み文字数を1行に表示したい文字数で割った余り(mod)が0」のときに、末尾に改行文字を追加すればよいです
毎回取得し直している場合は、取得した文字列を分割し、間に改行文字を追加して結合すればよいです
BPで改行する場合はShift+Enterで入力できる改行文字を使うとよいでしょう