SCREEN ヒラギノフォントのサポート情報サイト
本サイトはヒラギノフォントのサポート情報や販売店情報などを掲載しています
ホーム  FAQ  対応情報  ショップ  お問い合わせ |  ヒラギノフォント総合情報サイトトップへ

CID-Keyedフォント

千都NEWS 創刊準備号(1996年2月21日発行)より


国際化、開発効率の向上、出力の高速化、可搬性の確保。 さまざまな狙いを秘めて、もうすぐヴェールを脱ぐ ポストスクリプトフォントの新しいフォーマット、 それがCID-Keyedフォントだ。

大日本スクリーン製造株式会社◎開発部・三橋洋一

CID-Keyedフォントとは

CID-Keyedフォントは、従来の日本語PostScriptフォントが抱えていたいくつかの問題点を解消するために、Adobe Systems社が仕様を公開した新たなフォントフォーマットです。

CIDとは、Character IDentifier(文字識別子)の略で、各文字に割り当てられた整数値のことです。つまり、その名称は「CIDを手がかり(key)として各文字にアクセスするフォント」という機能に由来しているものと思われます。

CID-Keyedフォントは、文字の実体情報を格納した「CIDフォントファイル」と、文字コード(character code)*1とCIDとの対応を記述した「CMapファイル」から構成されます。CIDフォントファイルは1フォントにつき1ファイル*2、CMapファイルは1つの文字コード体系(エンコーディング)につき1ファイル必要になります。このようにCID-Keyedフォントでは、文字の実体情報(CIDフォントファイル)と文字コード体系(エンコーディング)の記述と(CMapファイル)を別ファイルとして分離しています。

従来の日本語PostScriptフォントでは、フォントプログラムの構造そのものが文字コード体系を表現するコンポジットフォント仕様になっていたため、プログラム構造が複雑で拡張性に欠ける、という問題点がありました。

言い換えると、従来形式のフォントが文字コード体系を追加しようとした場合、フォント全体を入れ替える必要がありました。ところがCID-Keyedフォントであれば、すでに完成しているフォントの実体には手を加える必要がなく、新しいCMapファイルを1つだけ追加すれば済みます。

CID-Keyedフォントの利点

1) 容量が小さくなる
1書体あたりの容量が10%程度小さくなります。 これはフォントプログラムの構造を単純化したことにより、無駄な部分が圧縮されたためですが、アウトライン形状やヒンティング*3の品質については従来フォントと同等です。

2) フォントプログラム仕様の統一
従来の日本語PostScriptフォントは、フォントベンダ各社ごとにフォントプログラムの仕様が異なっていました*4。このために同じアプリケーションで同じレイアウトをプリントしているにも関わらず、フォント指定を変えただけでエラーになる、というトラブルなども報告されていましたが、CID-Keyedフォントでは基本的なプログラムの仕様が統一されるため、このようなトラブルが発生することは少なくなるでしょう。

3) エンコーディングの追加が容易
CID-Keyedフォントは、文字の実体情報(CIDフォントファイル)とエンコーディングの記述(CMapファイル)とを分離したため、エンコーディングの追加が容易です。
従来形式のフォントではフォントをすべて入れ替える必要がありました
CID-Keyedフォントの場合はCMapファイルを1つ追加するだけです。

CIDフォントを利用できるプリンタは

さて、CID-KeyedフォントはPostScriptの新たな拡張仕様ですから、CID-Keyedフォントを使用するためには、基本的にCID-Keyedフォント拡張仕様を標準装備したPSプリンタを利用する必要があります。このようなプリンタを「組み込みサポート(native support)」のプリンタと呼びます。

ところが、すででに発売されたの多くのPSプリンタは、CID-Keyedフォント拡張仕様を装備しておりませんので、これらでCID-Keyedフォントを利用するためには、CID-Keyedフォントを利用(エミュレート)するためのパッチをインストールすればよいのです。こうして従来型のPSプリンタでもCID-Keyedフォントが利用できるようになります。なお、パッチで動作させる状態を「互換モード(compatibility mode)」と言います。互換モードはあくまでも過渡的な形態であり、今後は組み込みサポートのプリンタが徐々に増えてくるでしょう。

このパッチが最初からインストールされた状態で出荷されているプリンタもすでに存在するようです(組み込みサポートではなくあくまで互換モード)。


83pv-RKSJのお話

83pv-RKSJという言葉を耳にしたことはありませんか?実はこれ、日本語PostScriptフォント名の後ろに付けられている文字列なのですが(例:HiraginoMin-W3-83pv-RKSJ-H)、これがいったいどういう意味なのかを正確にご存じの方は、意外に少ないのではないでしょうか。 83pvは文字セットを表わし「83年度版JIS(JIS X 0208-1983)準拠の文字セットで、部分的に縦組用文字を含む(partially vertical)セット」という意味。RKSJは符号化方式(エンコーディング)を表わしローマン仮名シフトJIS(Roman Kana Shift JIS)の頭文字を取ったものです。Macintosh向けに発売されている多くの日本語Post-Scriptフォントのフォント名は、この83pv-RKSJを含むフォント名になっています(千都フォントも同様です)。 「それでは、千都フォントは83年度版JIS準拠の文字セット?」という質問が寄せられそうですが、実は千都フォントは90年度版JIS準拠(JIS X 0208-1990)の字体・文字セットに準拠しています。90pv-RKSJにしなかったのは、千都フォント発売開始当初にPSフォント名に83pv-RKSJを含んでいないと正常に動作しないアプリケーションが存在したから、という理由です。


<*1>ここでは、JISコード、シフトJISコードなどの文字コード体系(エンコーディング)を指している。CIDは、これら文字コードとは独立したCID-Keyedフォント内部のコードである。
<*2>従来形式の日本語PostScriptフォントは1フォントにつき数十ファイルもの構成になっていた。たとえば、千都フォントの場合、1書体を62ファイルで構成している。
<*3>文字を低解像で画面表示したり、低解像、あるいは小さなサイズでプリンタ出力するとき、文字のツブレを防ぐための情報。
<*4>PostScriptフォントは実際にはPostScriptプログラムとして記述されています。ソースの書き方がフォントベンダごとに異なるため、メモリの消費量、出力に要する時間、フォントの容量、などに影響を与えてきた。

【参考文献】「AdobeCMapおよびCIDTontファイル 仕様1.0版」 テクニカルノート#5014 / Adobe Systems Japan