FONT ライブラリで使用する用語を定義します。ここでの定義は独自のものであり、一般的な意味と異なることがあります。
2.1. 文字に関連する用語
文字に関連する用語をまとめたものを下表に示します。
用語 | 説明 |
---|---|
文字 | 描画の対象となる図形。視覚的に認識できる図形に加え、その周囲の空白領域も含みます。 |
文字コード | 文字をコンピュータで扱うために、それぞれの文字に割り当てられる数値。 |
文字セット | 文字と文字コードのペアの集合。 |
文字列エンコーディング | 文字コードを変換・配置して文字列をバイト列として表すための方法。 |
ISO 8859-1 |
ASCII 文字にいくつかの欧州文字や記号を追加した文字セットで、Latin-1 とも呼ばれています。 使われる文字コードの範囲は 0x00~0xFF ですが、0x00~0x1F と 0x80~0x9F には、表示することのできない制御文字が割り当てられています。 |
CP1252(Code Page 1252) | Windows のために Microsoft 社によって定義された欧州文字セット。ISO 8859-1 のうち、制御文字に割り当てられている 0x80~0x9F の範囲を表示可能な文字に置き換えたものですので、ISO 8859-1 で表示可能な文字はすべて CP1252 で表示することができます。 |
JIS X 0201 | JIS 規格で定められている日本語文字セット。いわゆる全角文字で、ひらがな・カタカナ・漢字等を含んでいます。 |
JIS X 0208 | JIS 規格で定められている日本語文字セット。いわゆる半角文字で、ASCII と半角カタカナを含んでいます。 |
ShiftJIS | 日本語環境での標準的な文字列エンコーディング。JIS X 0201 と JIS X 0208 に含まれている文字を使用することができます。 |
Unicode | 全世界の文字を、単一の文字セットで表現することを目的とした文字体系。文字セットおよび文字列エンコーディング双方の定義を含んでいます。 |
UTF16 |
Unicode で定義されている文字列エンコーディング。すべての文字が 2 バイトで表現されているため、ほかの文字列エンコーディングのほとんどが持っている、ASCII との互換性を持っていません。 エンディアンの違いで、UTF16-BE と UTF16-LE のように表記することがあります。 |
UTF8 | Unicode で定義されている文字列エンコーディング。文字によって 1 文字に対応するバイト数が異なります。ASCII 文字が 1 バイトで表現されるため、UTF16 とは異なり、ASCII との互換性を持っています。 |
2.2. グリフに関連する用語
視覚的に認識できる文字の形を「グリフ」と定義し、この節では、そのグリフの表示に関する用語を説明します。
下図は、グリフの表示に関連するパラメータを示したものです。黄色い領域がグリフ、グリフと緑色の領域を合わせたものが文字です。黒字は FONT ライブラリが提供するグリフが持っているパラメータ、青字は FONT ライブラリが提供するフォントが持っているパラメータ、赤字はグリフを文字列として表示する際にアプリケーション側で設定するパラメータです。
用語 | 説明 |
---|---|
グリフイメージ | 画像としての面を特に強調して、グリフを指す言葉。セルと呼ばれることもあります。 |
セルの高さ | グリフイメージの高さ。フォント全体で共通です。 |
グリフ幅 | グリフに外接する矩形の幅。図中では黄色い領域の幅です。 |
左スペース幅 | グリフと直前の文字との間に空ける空白の幅。 |
右スペース幅 | グリフと直後の文字との間に空ける空白の幅。 |
文字幅 | 文字の幅。グリフ幅と左右のスペース幅を足し合わせたものです。 |
文字幅情報 | 文字の幅に関する情報。左スペース幅、右スペース幅、グリフ幅、文字幅の 4 つの情報をまとめたものです。 |
ベースライン | 文字を横に並べて配置する(=文字列を描画する)際に、各グリフの上下方向の配置の基準となる位置。 |
アセンダライン | 文字列が占めるべき領域の上端となるライン。 |
ディセンダライン | 文字列が占めるべき領域の下端となるライン。 |
アセント | ベースラインとアセンダラインの距離。 |
ディセント | ベースラインとディセンダラインの距離。 |
フォントの高さ | アセンダラインとディセンダラインの距離。 |
フォントの幅 | タブ幅の基準となる、文字によらない文字幅。 |
2.3. フォントのリソースに関する用語
フォントデータなど、フォントのリソースに関連する用語をまとめたものを下表に示します。
用語 | 説明 |
---|---|
bcfnt(Binary Ctr FoNT) | FONT ライブラリで使用する通常のフォントデータ。また、そのフォントデータを格納したファイルの拡張子。 |
bcfna(Binary Ctr FoNt Archived) |
FONT ライブラリで使用する圧縮されたフォントデータ。また、そのフォントデータを格納したファイルの拡張子。 グリフの集合単位で抽出・展開して使用することができます。表示するフォントを言語ごとにグループで分ける場合や、一部のフォントだけ書体を切り替えたい場合などに利用します。 |
フォントリソース | FONT ライブラリで使用する通常のフォントデータ。bcfnt と同義です。 |
アーカイブフォント | FONT ライブラリで使用する圧縮されたフォントデータ。bcfna と同義です。 |
ctr_FontConverter | bcfnt および bcfna を作成するための Windows ツール。GUI 版と CUI 版が用意されています。 |
代替文字 | フォントに含まれていない文字の情報が要求された場合に、代わりに使用される文字。 |
2.3.1. グリフグループ
グループ分けされたグリフの集合を「グリフグループ」と定義します。また、グリフグループの集合を「グループセット」と呼びます。
FONT ライブラリでは、グループセット内の任意のグループを組み合わせて、フォントを構築する機能を提供しています。例えば「ascii」、「latin」、「greek」、「cyrillic」の 4 つのグループからなるグループセットから、ラテン語圏向けには「ascii」と「latin」の組み合わせ、ロシア語圏向けには「ascii」と「cyrillic」の組み合わせというように、表示に必要なグリフが含まれるグループだけでフォントを構築することができます。