Version: Unity 6.0 (6000.0)
言語 : 日本語
カラーの絵文字
UITK Text Settings アセット

Advanced Text Generator

Advanced Text Generator は、HarfbuzzICUFreeType を使用して包括的な Unicode サポートとテキストシェーピング機能を提供するテキストレンダリングモジュールです。

Advanced Text Generator を使用すると、アラビア語やヘブライ語のようにテキストの進行方向が右から左 (RTL) の言語など、さまざまな言語やスクリプトを使用できます。

Advanced Text Generator を有効にする

  1. メニューから Edit > Project Settings > UI Toolkit を選択します。
  2. Enable Advanced Text Generator チェックボックスを選択します。

Advanced Text Generator を使用する

Advanced Text Generator を使用するには、使用言語をサポートするフォントアセットが必要です。例えば、アラビア語を使用する場合は、アラビア語をサポートするフォントアセットを使用する必要があります。Advanced Text Generator はダイナミックフォントアセットのみをサポートします。プロジェクトで Advanced Text Generator を使用する前に、フォントをプロジェクトにインポートして、ダイナミックフォントアセットを作成する 必要があります。

UI Builder の場合

UI Builder で Advanced Text Generator を使用するには、以下の手順に従います。

  1. 適用するビジュアル要素を選択します。
  2. Inspector パネルで、Text を選択します。
  3. Advanced Text Generator ドロップダウンから、Advanced を選択します。

USS の場合

USS で Advanced Text Generator を使用するには、-unity-text-generatoradvanced に設定します。 例:

.labelText {
    -unity-text-generator: advanced;
}

C# スクリプト の場合

C# スクリプトで Advanced Text Generator を使用するには、TextGeneratorTypeAdvanced に設定します。 例:

textElement.style.unityTextGenerator = new StyleEnum<TextGeneratorType>(TextGeneratorType.Advanced);

Language Direction

Language Direction は、HTML の dir プロパティに対応するグローバルな UXML 属性です。この属性は、VisualElement のデフォルトのテキスト方向を設定し、子要素にカスケードします。

Language Direction は、省略記号の位置や句読点の配置にも影響します。:dir() pseudo-state のサポートが追加されると、テキスト方向に基づいて条件付きでスタイルを適用できるようになります。

  • Inherited (デフォルト): 要素はテキスト方向を親から継承します。
  • LTR (左から右): 要素内のテキストが左から右へ進むように強制します。
  • RTL (右から左): 要素内のテキストが右から左へ進むように強制します。

将来のリリースでは、auto という値もサポートされる予定です。値が auto の場合は、テキストブロック内の Unicode 文字の分析によって、テキスト方向が動的に決定されます。強い方向性を持つ文字 (LTR または RTL) が数えられて、その数の多さに基づいて方向が設定されます。

カーソル移動

このセクションでは、双方向テキスト (BIDI テキスト) を処理するときの Unity の入力フィールドでのカーソルの動きについて説明します。

Logical Cursor Movement

Unity は Logical Cursor Movement 方式に現在従っています。つまり、カーソルは双方向テキスト内でテキストのセグメントの方向に基づいて移動します。例えば、アラビア語と英語のテキストを含む文で、左矢印キーを使用すると、カーソルはアラビア語では右から左へと移動してから、英語セグメントでは左端の文字までジャンプし、そのセグメントが終わるまで左から右へと進みます。

Logical Cursor Movement の例
Logical Cursor Movement の例

Visual Cursor Movement

Visual Cursor Movement 方式に従っているアプリケーションもあります。カーソルはテキスト方向に関係なく、次のビジュアル文字に移動するため、ユーザーにとっては直感的に感じられる場合があります。将来のリリースでは、カーソル移動モードを任意の選択にする予定です。

制限

Advanced Text Generator には、以下のような制限があります。

  • ダイナミックフォントアセットのみをサポートします。
  • グリフメトリクスはカスタマイズできません。お勧めのベストプラクティスは、フォント編集ツールを使用して、必要に応じてメトリクスを調整するか、フォントをトリムすることです。

一部の機能はまだサポートされていませんが、今後のリリースでサポートされる予定です。

  • 特定のリッチテキストタグ: <sprite><size><font><space><mark>、その他のいくつかのタグ
  • 間隔のプロパティ: 文字、単語、段落の間隔など

Advanced Text Generator を使用すると、プロジェクトに icudt73l ファイルが加わります。このファイルは 4.8MB という多くのメモリを使用します。これは将来のリリースで改善される予定です。

追加リソース

カラーの絵文字
UITK Text Settings アセット
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961