Type1フォントをTrueTypeに変換 | C# .NET APIソリューション

概要

この記事では、C# を使用して Type1 フォントを TTF に変換する方法 について説明します。以下のトピックを取り上げます。

Type 1フォントとPostScriptでの使用について

1980年代にAdobe社が開発したType 1フォントは、デジタルタイポグラフィ、特にデスクトップパブリッシングやグラフィックデザインの分野で重要なコンポーネントです。これらのフォントは、高品質なレンダリングと、印刷業界に革命をもたらしたPostScriptページ記述言語との互換性で広く知られています。

Type 1フォントとは?

Type 1フォントは、スケーラブルで高解像度のテキストレンダリングを可能にするベクターベースのフォント形式です。Type 1フォントは、フォントのベクターアウトラインを含むアウトラインファイル(拡張子は.PFB)と、文字幅やカーニングデータなどのフォントのメトリック情報を提供するメトリックファイル(拡張子は.AFM)の2つの主要ファイルで構成されています。アウトラインとメトリックを分離することで、フォントデータを効率的に保存および操作できます。 ただし、.PFBファイルは*.AFMファイルなしでも使用できます。

Type 1 フォントの利点

PostScript における Type 1 フォント

Type 1 フォントは、高品質なテキストのレンダリングに必要な情報を提供するため、PostScript に不可欠な要素です。PostScript ファイルを処理する際、テキストを表示するための指示は、対応する Type 1 フォントファイルにリンクされます。

PostScript ドキュメントでは、Type 1 フォントを参照するコマンドを使用してテキストを定義します。例えば、コマンドは使用するフォント、サイズ、テキストの位置を指定できます。PostScript インタープリタは、Type 1 フォントファイルの情報を使用して、レーザープリンターやイメージセッターなどの出力デバイスにテキストを正確にレンダリングします。

C# で Type1 フォントを TrueType に変換する方法

特定の Type1 フォントを変換するには、そのフォントを含むファイルにそのフォントのみが含まれていて、他の要素は含まれていない必要があります。これは、フォントのみを含む PFB ファイルまたは PS ファイルのいずれかです。実際には、変換に必要なのはこれだけです。

つまり、C# で Type1 フォントを TrueType に変換するには、以下の 2 つの手順のみです。

  1. 静的メソッド PsDocument.ConvertType1FontToTTF を呼び出し、ソース Type1 フォント ファイルのパスと目的の TTF 出力パスを渡します。これにより、PsDocument オブジェクトをインスタンス化することなく変換が実行されます。
  2. (オプション) 変換後にドキュメントを操作する必要がある場合は、ソース ファイルを使用して PsDocument インスタンスを作成します。それ以外の場合は、上記の静的呼び出しで単純な変換に十分です。

Type1フォントからTTFへの変換機能は、弊社のWebアプリケーション Type1 Converter でオンラインでご確認いただけます。

C#でType1フォントをTTFに変換

以下のC#コードスニペットでは、Type1フォントをTrueTypeフォントに変換しています。

1// Convert Type1 font from "*.ps", ".pfa" or ".pfb" file.
2
3//Create ne PsDocument object
4PsDocument doc = new PsDocument();
5
6//Convert Type1 font from the file 'Type1_Arial_Bold.ps' to TTF font in DataDir folder.
7//Exstension of file can be ".pfa", ".pfb", ".ps" or something else. The main thing is that there is a font Type1 inside.
8doc.ConvertType1FontToTTF(DataDir + "Type1_Arial_Bold.ps", OutputDir);

Java および C++ の Type1 フォントから TTF への変換方法をご覧ください。

Convert Type1 font web application を使えば、Type1 フォントから TTF への変換をオンラインで評価できます。Type1 フォントを TTF に変換し、数秒で結果をダウンロードできます。

サンプルファイルとデータファイルは GitHub からダウンロードできます。