概要 - シェイプの記述

フォントおよびシェイプ ファイル(SHX)は、シェイプ定義ファイル(SHP)からコンパイルされます。シェイプ定義ファイルは、ASCII 形式でファイルを保存できるテキスト エディタかワード プロセッサを使用して作成したり修正できます。

各シェイプ(または文字)のシェイプ記述構文は、シェイプ記述の最終用途(シェイプまたはフォント)に関係なく同じです。シェイプ定義ファイルをフォント ファイルとして使用するときは、ファイルの先頭項目は、ファイル内のシェイプではなくフォント自体の記述です。この先頭項目がシェイプを表していると、ファイルはシェイプ ファイルとして使用されます。

シェイプ定義ファイルの各行には、最大 128 文字まで記述することができます。これより長いとコンパイルできません。空白行とセミコロンより右側のテキストは無視されるため、シェイプ定義ファイルにコメントを記述することができます。

各シェイプの記述は、次の形式のヘッダ行で始まります。 その後に、指定バイトを記述する 1 つ以上の行が続きます。 各指定バイトはカンマで区切られ、0(ゼロ)で終了します。

*shapenumber,defbytes,shapenamespecbyte1,specbyte2,specbyte3,...,0

次に、シェイプ記述の各フィールドについて説明します。

シェイプ番号

ファイル内で互いに重複しない番号で、1 から 258 の間で指定します(Unicode フォントの場合は、最大 32768 まで)。番号の前にはアスタリスク(*)を付けます。非 Unicode フォント ファイルは、シンボリック識別子 Degree_Sign(度記号)、Plus_Or_Minus_Sign(±記号)、Diameter_Symbol(直径記号)にシェイプ番号 256、257、258 を使用します。Unicode フォントでは、これらのシンボルはシェイプ番号 U+00B0、U+00B1、U+2205 で現れ、「ラテン-1 補助」または「数学記号」サブセットの一部になります。

また文字フォント(各文字のシェイプ定義が格納されたファイル)には、Unicode または ASCII コードの中の各文字の値に対応する固有の番号を指定する必要があります。他のシェイプには任意の番号を割り当てることができます。

定義バイト数

シェイプの記述に必要なデータ バイト( 指定バイト )の数で、これには最後の 0(ゼロ)も含めて指定します。上限は、1 シェイプにつき 2,000 バイトです。

シェイプ名

シェイプの名前です。シェイプ名は、大文字でないと認識されません。小文字のシェイプ名は無視されます。小文字は通常フォント シェイプ定義のラベルに使用します。

指定バイト

シェイプ指定バイトです。各指定バイトは、ベクトルの長さと方向、またはいずれかの特殊コード番号を定義するコードです。指定バイトは、シェイプ定義ファイルでは 10 進数または 16 進数の値で表現されます。指定バイトの最初の文字が 0(ゼロ)のときは、その後の 2 文字が 16 進数値として解釈されます。