PostScriptフォント

PostScriptフォントはアドビシステムズが開発したアウトラインフォントの仕様である。フォント情報のエンコードにPostScriptファイル形式を使用する。 Type 0はPostScript Language Reference Manual, 2nd Editionに記述されているように、「合成」フォント形式である。合成フォントは複数の子孫フォントを参照する高レベルフォントからなる。 OCF (Original Composite Font) 形式 (Type 0のファイル構造を使う) は大きな文字集合を持つフォントをサポートするために設計した形式。その後、複雑なアジア言語の符号化の問題を解決するため、より柔軟な構造を持つCID形式へとフォントフォーマットを移行する。 Type 1 (別名PostScript、PostScript Type 1, PS1、T1もしくはAdobe Type 1) は1バイト欧文フォントのためにAdobe Type ManagerソフトウェアとPostScriptプリンタで使われるフォント形式である。フォントヒンティングのサポートが可能である。 当初はプロプライエタリな仕様であったが、アドビはすべてのType 1フォントが遵守しなければならないという条件付きで、サードパーティのフォント製造業者に仕様を開示した。 Type 1はアウトライン情報のみを格納するよう効率的にPSシステムを単純化したものであり、完全な言語ではなかった (この点はPDFも同様である)。アドビはそれからType 1テクノロジのライセンスを極めて高額だが、ヒンティングのサポートを付け加えて売った。Type 1のより安価な実装であるType 3フォントはPostScript言語の洗練された機能すべてを使えたが、ヒンティングのための標準化された手段がなかった。その他の違いがさらに混乱を増やした。 この時点ではライセンス価格は非常に高額であると考えられており、アドビは値引きに頑として応じなかった。この問題によりアップルは独自のシステムであるTrueTypeを1991年ごろに設計した。TrueTypeがアナウンスされると直ちに、アドビはType 1フォント形式の仕様を公開した。Altsys社のFontographer (1995年1月にマクロメディアに買収され、2005年5月からFontLabに保有された) のような小売されるツールにはType 1フォントの作成機能が追加された。それ以降、多くのフリーのType 1フォントがリリースされた。たとえば、TeX組版システムで使われるフォントがこの形式で利用可能である。 PostScript (PS) 言語を使うことにより、グリフは (TrueTypeの2次曲線とは対照的に) 3次ベジェ曲線で記述され、そしてそれゆえ1つのセットのグリフを単純な数学的変換を通してサイズ変更し、PostScript対応のプリンタに送ることができる。Type 1のデータはビットマップ画像ではなくグリフのアウトラインを記述しているので、Type 1フォントはよく「アウトラインフォント」と呼ばれる。これらの書体を電子ディスプレイ上で事前に確認したい利用者のために、フォントの小型版は余分なヒントとアンチエイリアスによって画面上で見やすくきれいに表示する必要がある。このためにしばしば追加されたのが、画面表示のために最適化された同じ書体のビットマップフォント形式であった。さもなければ、Type 1フォントを組版アプリケーションでプレビューするためには、Adobe Type Managerが必要だった。 Type 2は、アウトラインフォントファイルにおける文字記述の手続きにコンパクトな表現を提供する、character string形式である。この形式は Compact Font Format (CFF) と組み合わせて使うように設計されている。CFF/Type2形式はType 1 OpenTypeフォントの基礎であり、Acrobat 3.0 PDFファイル (PDF形式バージョン1.2) へのフォント埋め込みに使われる。 Type 3フォント (別名、PostScript Type 3、PS3、T3もしくはAdobe Type 3) はサブセットではなく完全なPostScript言語を使って定義されたグリフからなる。これにより、Type 3フォントはType 1フォントでは不可能なシェーディング、色、フィルパターンの指定などが行える。しかしながら、ヒンティングはサポートしていない。このフォントの処理には完全なPostScriptインタプリタが必要であるため、これを持たないAdobe Type ManagerはType 3フォントをサポートできない。 Type 4はプリンタフォントカートリッジとプリンタのハードディスク上の永続的なストレージ用のフォントを作るために使われた形式である。文字の記述はType 1形式で表現される。アドビはこのプロプライエタリな形式を文書化していない。 Type 5はType 4形式に似ているが、PostScriptプリンタのROMへ格納されるフォントのために使われる。CROMフォント (圧縮ROMフォント) という別名でも知られている。 CIDフォントは文字記述の方式によって3つの種別（CIDFontType番号）が定義されている。Type 1の方式を用いるものがCIDFontType 0、Type 3の方式を用いるものがCIDFontType 1、Type 42の方式を用いるものがCIDFontType 2である。これらはType番号も他のフォント形式とは区別されており、それぞれType 9, 10, 11と定められている。 CIDフォントであることを宣言できるため「CIDフォントType 1」のように呼ぶこともあるが、CIDFontType番号を持たないフォントも多いため、GhostscriptなどはCIDFontTypeではなくType番号だけで呼んでいる。 Type 14、もしくはChameleonフォント形式は、多数のフォントを少量の格納空間で表現するために使われる。Chameleonフォントのコアセットは1つのMaster Fontと、特定の書体の望んだ字形の集合を与えるためにMaster Fontを補正する方法を指定したフォント記述子の集合からなる。 アドビはType 14形式を文書化していない。 Type 32はバージョン番号2016かそれ以降のPostScriptインタプリタにビットマップフォントをダウンロードするために使われる。ビットマップ文字は直接インタプリタのフォントキャッシュへ転送され、そのためプリンタのメモリを節約できる。 Type 42フォント形式はPostScriptファイル形式に埋め込まれたTrueTypeフォントである。これによりTrueTypeラスタライザを含むPostScript対応プリンタが可能になる。PostScriptインタプリタにはバージョン2010でオプション機能として初めて実装された。複数バイトCJK TrueTypeフォントのサポートはバージョン2015で追加された。 CIDフォント (英語: CID Font、別名CID-keyed Font、CID-based Font) は多数のグリフを扱うために設計されたPostScriptフォントファイル形式である。欧文以外の文字集合はほとんどの欧文フォント (Identity-HとIdentity-Vフォントも含まれる) を作り上げる欧文書体より多くの文字を含むので、それらをサポートするために開発された。 アドビは複雑なアジア言語 (CJK) の符号化と非常に大きな文字集合の問題を取り扱うOCF/Type 0フォントの問題を解決するためにCIDフォント形式を開発した。 CIDフォント形式標準Type 1フォント形式と組み合わせてCIDフォントで、もしくはType 2と組み合わせてCID-keyed OpenTypeフォントで使うことができる。 Compact Font Format (別名CFFフォント形式、Type 2フォント形式、もしくはCFF/Type 2フォント形式) は複数引数のオペレータ、各種の定義済みデフォルト値、符号化された値のより効率的な割り当ておよびにFontSet (フォントのファミリ) 間で共有されるサブルーチンを使うことにより、Type 1より少ない格納空間を使うように設計されている。OpenTypeフォントはCFFテーブルにグリフのアウトラインを含むこともできる。 CFFはType 2 charstring形式と組み合わせて使うように設計されている。CFFはType 1 OpenTypeフォント形式の基礎となっている。 CFFフォントはPDFバージョン1.2から、PDFファイルに埋め込むことができるようになった。Type 2 charstringフォント形式とCIDフォント形式は、ともにCID-keyed OpenTypeフォントのために使うことができる。 Type 1フォントは品質を一切落とすことなしに、CFF/Type2形式に変換し、またType 1に戻すことができる。 マルチプルマスターフォント (もしくはMMフォント) は、アドビシステムズのType 1 PostScriptフォントの拡張である (であった)。現在ではOpenTypeの出現によりほとんどとってかわられた。マルチプルマスターフォントは1つかそれ以上の「マスター」 — すなわち、オリジナルのフォントスタイル — を含み、利用者がそれらのフォントスタイルをに連続する範囲の「軸」に沿って織り交ぜることを可能にする。 PostScriptのグリフデータはOpenTypeフォントファイルに埋め込むことができるが、OpenTypeフォントはPostScriptアウトラインを使うものに限られない。 Adobe Font Metrics (AFM) ファイルは一般的なフォント情報とフォントメトリック情報を含む。AFMファイルは通常Unix環境でのみ直接使われる。 Printer Font ASCII (PFA) はASCIIバージョンのPFBで、通常ファイル名に".PFA"という拡張子が付く。フォントの字形データを含む。PFAはPostScript言語のインタプリタが使うフォントの形式であり、UNIX環境で使われるType 1フォントの推奨される形式でもある。 Printer Font Binary (PFB) はアドビが作成したバイナリPostScriptフォント形式であり、通常ファイル名に".PFB"という拡張子が付く。フォントの字形データを含む。 Printer Font Metric (PFM) はバイナリ版のAFMであり、通常ファイル名に".PFM"という拡張子が付く。フォントのメトリック情報を含む。 .inf (INFormation) ファイルはWindowsやDOSベースのアプリケーションにおけるフォントメニューでの名前など、アプリケーション固有の情報をプレーンASCIIテキストで含む。フォントがWindowsにインストールされるとき、ATMのインストーラソフトウェアはAFMとINFファイルを入力にとり、必要なPFMファイルをインストール時に生成する。AFMとINFファイルは利用者のシステムにインストールされない。 .MMM ファイルはマルチプルマスターフォントがWindows環境で必要とし、メトリックデータに使われる。 CIDは、アドビ社のCIDフォントが内蔵するすべての文字（文字コレクション）を識別するため、文字ごとに振られる一連の番号。 文字コレクションは言語ごとに定義され、その言語の主要な文字集合をサポートするために必要な文字をすべて含む。文字コレクションには「登録者-配列（-追補番号）」の形式で名前が付けられる。たとえばアドビ社が定めた日本語の表記に使われる文字コレクションの名称はAdobe-Japan1である。 Adobe-Japan1は、JIS X 0208やISO/IEC 10646(≒Unicode)などの公的な文字コード規格では（異体字セレクタを使わない限り）同じコードが与えられている異体字の字形1つ1つに別々のCIDを割り当てている。実際のOS・アプリケーションとのやりとりは通常フォントに内蔵されている CMAPテーブル（CIDとUnicodeを相互に関連付けた対応表）を参照して行われるが、Acrobat・InDesign（いずれもアドビシステムズ社製品）・日本語LaTeX[1]（フリーソフト）などのソフトはCID番号を直接利用することがある .OFM はOS/2バージョン2.1から、そのバイナリ版のフォントメトリックファイルに使われる拡張子である。 PostScriptフォントはあらゆる文字集合を符号化できるが、アドビが開発したフォントで使うために、アドビが特に開発した文字集合が存在する。 これは大文字と小文字の字母、図形記号、アクセント文字、および約物からなる基本的な文字集合を含む。これらのフォントは通貨記号 (セント、ドル、ユーロ、フローリン、ポンド、円)、標準的な合字 (fi, fl)、よく使われる分数 (1/4, 1/2, 3/4)、よく使われる数学記号、上付き数字 (1,2,3)、よく使われる区切り文字や連結文字、その他の記号 (短剣符、商標、登録商標、著作権、段落記号、リットル、estimated symbolなど) も含む。Western 2 はさらに17種類の記号文字を追加した: ユーロ、リットル、estimated、オメガ、パイ、偏微分、デルタ、積算、総和、根号、無限大、積分、近似、不等号、以下、以上、および菱形。 Adobe Western 2 文字集合を含むフォントはアフリカーンス語、バスク語、ブルトン語、カタルーニャ語、デンマーク語、オランダ語、英語、フィンランド語、フランス語、ゲール語、ドイツ語、アイスランド語、インドネシア語、アイルランド語、イタリア語、ノルウェー語、ポルトガル語、サーミ語、スペイン語、スワヒリ語およびスウェーデン語を含む、ほとんどの西欧言語をサポートする。 この標準はアドビがOpenTypeフォントに実装する新しい最小の文字集合標準であるISO-Adobeに取って代わられた。 Adobe CE 文字集合を含むフォントには以下の中央ヨーロッパ言語のサポートに必要な文字も含まれている: クロアチア語、チェコ語、エストニア語、ハンガリー語、ラトビア語、リトアニア語、ポーランド語、ルーマニア語、セルビア語 (ラテン文字)、スロバキア語、スロベニア語およびトルコ語。 この簡体字中国語の文字コレクションはGB 1988-89、GB 2312-80、GB/T 12345-90、GB 13000.1-93、およびGB 18030-2005文字コード規格のサポートを提供する。サポートされる文字符号化方式にはISO-2022、EUC-CN、GBK、UCS-2、UTF-8、UTF-16、UTF-32、およびGB 18030-2005で公開されている1、2、4バイトコードを組み合わせた文字符号化方式が含まれる。 この繁体字中国語の文字コレクションはBig5とCNS 11643-1992文字コード規格のサポートを提供する。おもに香港ロケールで使われる文字を含んだ、多数のBig5拡張のサポートも含んでいる。サポートされるBig5拡張の主要なものにはHKSCSが含まれる。 サポートされる文字符号化方式にはISO-2022、EUC-TW、Big5、UCS-2、UTF-8、UTF-16、およびUTF-32が含まれる。 日本語フォントのために開発された文字集合である。アドビの集合はJIS X 0208, ISO-2022-JP、Microsoft Windows 3.1 J、JIS X 0213:2004、JIS X 0212-1990、共同通信のU-PRESSなどに由来する文字集合をサポートする。 当初JIS X 0212-1990文字コード規格の実装およびそのMacintosh拡張として Adobe-Japan2-0 が存在したが、Adobe-Japan1-6 規格の導入とともに、Adobe-Japan2-0は廃止された（Adobe-Japan2-1以降は元々存在しない）。 この朝鮮語用の文字コレクションはKS X 1001:1992とKS X 1003:1992文字コード規格、およびいくつかの選定されたメーカー拡張のサポートを提供する。サポートされる文字符号化方式にはISO-2022-KR、EUC-KR、Johab、UHC、UCS-2、UTF-8、UTF-16、およびUTF-32が含まれる。 ISO-Adobe文字集合を含むフォントは、以下のようなほとんどの西欧言語をサポートする: アフリカーンス語、バスク語、ブルトン語、カタルーニャ語、デンマーク語、オランダ語、英語、フィンランド語、フランス語、ゲール語、ドイツ語、アイスランド語、インドネシア語、アイルランド語、イタリア語、ノルウェー語、ポルトガル語、サーミ語、スペイン語、スワヒリ語およびスウェーデン語。これはアドビ製のほとんどのPostScript Type 1における標準文字集合である。 Windows 95、Windows 98、Windows NTおよびWindows MeはType 1フォントをネイティブにサポートしない。これらのオペレーティングシステム上でこれらのフォントを使うにはAdobe Type Managerが必要である。Windows 2000、Windows XPおよびWindows VistaはGDI呼び出しを通してType 1フォントをネイティブにサポートする。しかしながらWindows Vistaで導入され、Windows XPでも利用可能なWindows Presentation FoundationはType 1フォントのサポートを捨て、Type 2フォントに乗り換えている。 PostScriptをネイティブにサポートするWindowsプラットフォームでは、バイナリ形式のPostScriptとOpenTypeファイル形式のみがサポートされている。 Windows VistaにおいてWindows Presentation Foundation（かつてのコードネームAvalon）はOpenType CFF/Type 2フォントのラスタライズをサポートする一方、Type 1フォントはまだGDIでサポートされているがGDI+ではサポートされていない。 フォントの種類に加え、PostScript仕様は最小数のフォントと各フォントがサポートすべき文字集合を指示するCore Font Setも定義している。PostScript 3では、136種類のフォントが規定され、そのうちの35種類が標準フォントであり、Windows 95、Windows NTおよびMacintoshのコアフォントである。選ばれたフォントはMicrosoft OfficeとHP 110フォント集合に由来する。 フォント OpenType TrueType ページ記述言語 英語版ウィキブックスのPostScript FAQ。 PostScript Type 1 and Type 3 Fonts General Information (英語、archive.orgによる2009年2月のスナップショット) Adobe Type 1 Font Format（英語） Adobe Tech. Note #5015, Type 1 Font Format Supplement（英語） Adobe Tech. Note #5176, The CFF (Compact Font Format) Spec., (PDF: 251 KB) (英語) Adobe Tech. Note #5177, Type 2 Charstring Format (PDF: 212 KB) (英語) Adobe Tech. Note #5012, The Type 42 Font Format Specification (英語) Adobe CID fonts (英語、archive.orgによる2016年3月のスナップショット) Font Formats, File Types and Q&A (英語、archive.orgによる2016年3月のスナップショット) Adobe - Fonts : Character Sets (英語、archive.orgによる2014年11月のスナップショット) Adobe Tech. Note #5094 Adobe CJKV Character Collections and CMaps for CID-Keyed Fonts (英語) Adobe Tech. Note #5078 Adobe-Japan1-6 Character Collection for CID-Keyed Fonts (英語、archive.orgによる2019年6月のスナップショット) Adobe Tech. Note #5097 Adobe-Japan2-0 Character Collection for CID-Keyed Fonts (英語、archive.orgによる2018年6月のスナップショット) PostScript 3 Core Font Set Overview (英語) The Adobe PostScript 3 Font Set (英語、archive.orgによる2016年12月のスナップショット) comp.fonts FAQ: OS/2 2.1 and beyond (英語) comp.lang.postscript FAQ (英語、archive.orgによる2013年6月のスナップショット) About Fonts (英語、archive.orgによる2012年5月のスナップショット) Fonts, Fonts, and more Fonts! (英語、archive.orgによる2016年3月のスナップショット)