代替条件式、略語辞書、ラベルの切詰めを使って、Maplex Label Engine では、長いラベルを小さなスペースに収まるように短縮できます。代替表現を使用する場合、ラベル エンジンは最初にラベルのフルテキストを配置しようとします。配置できない場合は、ラベルをフィールド値または Arcade 条件式で指定したテキストに置き換えます。それでもラベルが適切に配置されない場合、ラベル エンジンは辞書にある単語を略語にして、ラベルが利用できるスペースに収まるようにします。切詰めは最後のオプションで、ラベル内の単語を指定された文字数に基づいて、切詰めから削除または除外することで短縮します。こうした調整ルールは任意の組み合わせで使用できますが、常にこの順序で適用されます。
代替条件式
代替表現を使って、Maplex Label Engine で長いラベルを制限されたスペースに収まるように短縮できます。代替条件式では、長いラベルの置換先になるフィールドを選択するか、Arcade を使用して複数のフィールドとテキストを含む条件式を構築します。1 つの例として、学校のフルネームを収めるにはスペースが小さすぎる場合、「School」という単語のみのラベルを学校に付けることがあります。この場合は、「School」の代替テキストがレイヤー内の別のフィールドまたは Arcade 条件式から取得され、フィーチャのラベルに代わりに使用されます。
- Maplex Label Engine が有効化されていることを確認します。
- [ラベル別にリスト] で [コンテンツ] ウィンドウの表示を利用すると、非常に効果的です。[ラベル別にリスト] をクリックします。
- コンテンツ ウィンドウでラベル クラスを選択して、[ラベリング] タブをクリックします。
- [ラベリング] タブの [ラベルの配置] グループで [ラベル配置プロパティ] をクリックします。
- [ラベリング] ウィンドウで、[配置] をクリックして をクリックします。
- [短縮] を展開します。
- [略語ルールの使用] チェックボックスをオンにします。
- ドロップダウン リストからフィールドを選択するか、[式] ボタン をクリックして代替条件式に使用する Arcade 条件式を指定します。必要に応じて、条件式のタイトルを指定します。
略語辞書
略語辞書を使って、Maplex Label Engine で長いラベルを小さなスペースに収まるように短縮できます。略語辞書を使用する場合、Maplex Label Engine は最初にラベルのフルテキストを配置しようとします。配置できない場合は、配置できなかったラベルの辞書にある単語を略語にします。
略語辞書は、個々のラベル クラスに適用されます。略語は、独立した 1 つの単語または単語のグループに適用され、英語以外の特定の単語を除き、単語の一部には適用されません。Road や Street などの個別の単語を Rd や St に短縮したり、Post Office などのより長い文字列を PO に短縮することができます。単語の一部分は略されません。たとえば、辞書エントリで、Road に Rd という略語を割り当てた場合、Roadrunner Road というラベルは、Rdrunner Rd ではなく、Roadrunner Rd と略されます。Maplex Label Engine の場合、テキスト書式タグを含むラベルは略されません。
以下の図では、Plumas Street が、短いストリート セグメント内に収まるように、Plumas St に略されています。同様に、Monterey Street も略されています。十分なスペースがある場合は、ラベルの最後は省略されません。
注意:
ラベルに、テキスト書式タグ、下付きまたは上付き記号、発音区別符号などの結合文字、または右から左への文字が含まれる場合、テキスト文字列は略されません。
略語辞書エントリの種類
略語辞書のエントリには、「キーワード」、「末尾」および「変換」の 3 種類があります。この 3 種類のうち、「キーワード」と「末尾」の 2 つは、スペース不足、ラベルとラベルの競合、またはラベルとフィーチャの競合のために元の文字列が配置できない場合にのみ、単語に適用されます。「変換」エントリは、常にすべての一致する単語に適用されます。
- キーワード エントリは、文字列内の最後の単語を除くすべての単語に適用されます。キーワードを使って、Mount や International などの一般的な単語を Mt や Intl などの略語に置き換えることができます。
- 末尾エントリは、文字列の最後の単語にだけ適用できます。この種類の略語は、Street を St、Road を Rd、Avenue を Ave というように、道路名の終わりの部分を短縮するために使います。
- 変換エントリは、常に文字列のすべての単語に適用されます。「変換」のエントリは、マップを別の言語に翻訳するとき、ラベル文字列から単語を削除したいとき、ある単語が出てきたら必ず略語にしたいときに便利です。この種類の略語は、長い道路名を短縮するために使います。たとえば、Martin Luther King Boulevard は MLK Blvd になります。
英語以外の道路名
ドイツ語系の言語では、たとえば、Fredrichstrasse というように、該当の道路の名前に汎用の道路名の語尾が追加されます。こうした特殊なケースに対応するために、Maplex Label Engine は、ストリート ラベルに対して長すぎる文字列の中に見つかったときに略語にすることができる 4 種類の特別な文字列を認識します。
- ドイツ語 - strasse
- スウェーデン語 - gatan
- オランダ語 - straat
- デンマーク語 - gade
- ノルウェー語 - gaten
これらの単語のうちの少なくとも 1 つが略語辞書にある場合、略語のための特殊モードが Maplex Label Engine で有効になります。語尾がいずれの種類であっても、Maplex Label Engine は、最後の単語ではなく、文字列の終わりの部分の文字について、使えそうな略語を探し、略語がそれらの文字に一致するかどうか試します。スペースが限られているために略語を使用する必要がある場合は、終わりの部分にハイフンを付けることや、終わりの部分を改行することもできます。
この種類の省略が行われる場合、他の文字列が文字列内に含まれていても略すことはできません。
次のイメージでは、オランダ語の略語辞典を使用して 3 つの道路名が省略されています。略語は次のとおりです。
- GRAVENSTRAAT = GRAVENSTR
- DAMRAKSTEEG = DAMRAKSTG (DAMRAK-STG というようにハイフン付きで改行)
- ZOUTSTEEG = ZOUTSTG
略語辞書の作成
略語辞書を作成するには、次の手順を実行します。
- Maplex Label Engine が有効化されていることを確認します。
- [ラベリング] タブの [マップ] グループで、[その他] > [略語辞書] をクリックします。
- [新規] をクリックして、辞書の名前を指定します。
辞書への略語の追加
略語辞書に単語を追加するには、辞書テーブルに行を追加して、キーワード列に単語を入力し、スペースで区切った 1 つ以上の略語を入力し、辞書エントリの種類 ([変換]、[キーワード]、[末尾] のいずれか) を指定します。複数の語から成る略語は、引用符で囲む必要があります。たとえば、2 つの単語から成る文字列 Post Office を "PO" と略すことができます。
ヒント:
- エントリをスペースで区切ることにより、1 つの単語について複数の略語を追加できます (例: "Str" "St")。
- 略語にスペースを含める場合は、文字列を二重引用符で囲みます (例: "P. O")。
- [ラベリング] タブの [マップ] グループで、[その他] > [略語辞書] をクリックします。
- 略語辞書を作成するか、既存の辞書を読み込みます。
- [行の追加] をクリックして、エントリを辞書テーブルに追加します。
- 略したい単語を入力します。
- 単語の略語を入力します。2 つ以上の略語が可能な場合は、エントリをスペースで区切り、引用符で囲みます。
1 番目の略語エントリが最初に適用され、次に 2 番目のエントリというように順に適用されます。文字列が配置されると、それ以上の略語エントリは適用されません。
- 使用したい略語のタイプ ([変換]、[キーワード]、[末尾]) をドロップダウン リストから選択します。
略語辞書の保存
略語辞書は、辞書ファイルまたはデータベース テーブルに保存できます。略語辞書を保存するには、[略語辞書] ダイアログ ボックスの [オプション] 矢印をクリックし、[ファイルに保存] または [データベース テーブルに保存] を選択します。
略語辞書の読み込み
以前に保存した略語辞書ファイルおよびテーブルは、[略語辞書] ダイアログ ボックスから新しいプロジェクトに読み込むことができます。[オプション] 矢印をクリックして、[ファイルから開く] または [データベース テーブルから開く] を選択します。
既存の略語辞書への追加
以前に保存した略語辞書を読み込むときに、既存の辞書に追加することができます。[略語辞書] ダイアログ ボックスの [選択した略語辞典] ドロップダウン リストから追加する辞書を選択して、[オプション] 矢印をクリックします。[ファイルから追加] または [データベース テーブルから追加] を選択します。
略語辞書のファイル形式
アスタリスク (*) で始まる行は、コメント行です。略語エントリの形式は、以下のパターンに従います。
<Word> <Option1> <Option2> <OptionN> <Type>
略語ファイルの例
* Maplex Label Engine Dictionary File -
v1.0
* Format: TEXT ABBREVIATION(S) TYPE
* where TYPE=[Translation|Keyword|Ending]
"Street" "Str" "St" Ending
"Road" "Rd" Ending
"Post Office" "Post Off." "PO" Keyword
* [end]
略語テーブルの形式
略語テーブルは、[キーワード]、[略語]、[タイプ] という、3 つのフィールドから構成されます。[キーワード] フィールドと [略語] フィールドの形式は、上記のセクション「辞書への略語の追加」で概説しているとおりです。[行タイプ] フィールドには、略語辞書の 3 種類のエントリに応じて、以下の 3 つの整数値が入ります。
- 0 - 変換
- 1 - キーワード
- 2 - 末尾
略語辞書の使用
略語辞書を作成したら、使いたい略語のラベル クラスに割り当てることができます。略語辞書は、保存して新しいプロジェクトに読み込むことで再利用できます。辞書は、辞書ファイルに保存することも、テーブルとして保存することもできます。辞書ファイルは、テキスト ファイルとしてフォーマットされ、*.dic という拡張子が付けられて保存されます。テーブルは、データベース内に格納したり、*.dbf テーブルなどのように単独で使用したりすることができます。
- Maplex Label Engine が有効化されていることを確認します。
- [ラベル別にリスト] で [コンテンツ] ウィンドウの表示を利用すると、非常に効果的です。[ラベル別にリスト] をクリックします。
- コンテンツ ウィンドウでラベル クラスを選択して、[ラベリング] タブをクリックします。
- [ラベリング] タブの [ラベルの配置] グループで [ラベル配置プロパティ] をクリックします。
- [ラベリング] ウィンドウで、[配置] をクリックして をクリックします。
- [短縮] を展開します。
- [略語ルールの使用] チェックボックスをオンにします。
- 使用する略語辞書を [辞書] をドロップダウン リストから指定します。
ラベルの切詰め
配置のために必要であれば、ラベル内の単語は切詰めによって短縮できます。何文字かが削除され、設定したマーカー文字がラベルの最後に付きます。Maplex Label Engine は、最初に、ラベル内で最も長い単語を対象に、先頭文字以外の指定された文字を削除します。ラベルが十分に短くならない場合は、次に母音が削除され、続いて切詰められたラベルの最後の文字から削除されていきます。これは、ラベルが配置されるか、ラベルが配置できないと判断されるまで続きます。
メモ:
1 つ以上の母音 (aeiou) を含む 2 文字または 3 文字の短い単語は切詰められません。この仕様により、ラベルの切詰めが制限されます (例: Boulevard de Nantes → B. de N.)。
単語の末尾の母音は、文字単位ではなく 1 回のステップで削除されます。
組になっている括弧は削除されません。
以下の図では、教会のラベルである Ascension Episcopal Church (Historical Site) が Asn.E.C.(H.Sit.) に切詰められています。ラベル内で切詰められているそれぞれの部分にピリオドが付けられます。
- Maplex Label Engine が有効化されていることを確認します。
- [ラベル別にリスト] で [コンテンツ] ウィンドウの表示を利用すると、非常に効果的です。[ラベル別にリスト] をクリックします。
- コンテンツ ウィンドウでラベル クラスを選択して、[ラベリング] タブをクリックします。
- [ラベリング] タブの [ラベルの配置] グループで [ラベル配置プロパティ] をクリックします。
- [ラベリング] ウィンドウで、[配置] をクリックして をクリックします。
- [短縮] を展開します。
- [略語ルールの使用] チェックボックスをオンにします。
- [切詰め] チェックボックスをオンにします。
- 必要に応じて、[単語の最小長]、[マーカー文字] (切詰めたラベルの最後に置く)、[最初に削除する文字]、および [削除しない文字] に値を指定します。