PDF フォント

www.altova.com すべてを展開/折りたたむ このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  SPS ファイル: 表示方法 > 印刷媒体出力のデザイン >

PDF フォント

フォーマッターと PDF ビューアーによるフォントの使用

PDF ファイルはフォーマッター(例えば FOP)により作成され、PDF ビューアー(通常 Adobe Reader)により閲覧されます。

 

PDF のレイアウトを行うには、ドキュメントにて使用されているフォント、その中でも特に使用されている文字の幅が重要になります。この情報により、行の長さやハイパーリンク、行端揃えなどが計算されます。これらの情報はフォントのメトリックと呼ばれており、各フォントに対して収められます。フォーマッターによっては、システムのフォントフォルダーを直接読み取ることができるのに対し、(FOP のような)その他のフォーマッターに対しては、メトリックを指定する必要があります。フォントのメトリックがフォーマッターに対して利用できる場合、PDF のレイアウトが適切に作成されます。ドキュメントで使用されている全てのフォントのメトリックを、使用しているフォーマットからアクセスできるようにする必要があります。

 

フォーマッターはフォントを参照することができるほか、PDF ファイル内部にフォントを埋め込むことができます。フォントが参照された場合、PDF ビューワー(例: Adobe Reader)は通常(base 14 フォントが含まれる)独自のリソースフォルダーからそのフォントの検索を行い、フォントがそこに無い場合はシステムのフォントフォルダーを検索します。フォントが利用できる場合、PDF が表示される際にそのフォントが使用されます。フォントが見つからない場合、リソースフォルダー上にある代替フォントが使用されるか、エラーが表示されます。代替フォントには異なるメトリックが指定されている場合もあり、表示エラーが生成される可能性もあります。

 

フォーマッターによりフォントが PDF ファイル内部に埋め込まれた場合、埋め込まれたフォントが PDF ビューワーにより使用されます。フォーマッターはフォントの全文字セットを埋め込むことができるほか、ドキュメント内部で使用されているフォントのサブセットだけを埋め込むことができます。フォントの埋め込み方法により、PDF ファイルの大きさが変わってくるだけではなく、フォントの使用に関する版権にも影響を与える可能性があります(以下のメモを参照ください)。フォーマッターのオプションを指定する際に、これらオプションの選択を指定できる場合があります。

 

 


 

 

StyleVision にてサポートされるフォント

 

デフォルトでは、StyleVision により作成された PDF には、(i) フォントが指定されることなく、(base 14 フォントの)Helvetica/ArialMT がデフォルトで使用されるか、(ii) base 14 フォントがデザインにて明示的に指定されたか、(iii) これらのフォントはフォントにて明示的に指定されたフォールバックとして使用されるため、base 14 フォントが含まれます。
SPS にて Helvetica または Times が指定されており、この SPS により作成された PDF 出力をバージョン 4.0 以上の Acrobat Reader により閲覧する場合、PDF リーダーではフォントリソースフォルダーにある Arial MT ならびに Times New Roman PS MT がそれぞれ使用されます。Helvetica ならびに Times がシステム上に存在する場合でも、Acrobat Reader はこのように振る舞うことになります。
StyleVision では、ドキュメント内にある全てのテキストを選択し、スタイルサイドバーにあるフォントグループの font-family 属性にて目的のフォントを指定することで、ドキュメント全体に対してデフォルトのフォントを変更することができます。
メニューオプションの (ツール | オプション) からアクセスすることのできるオプションダイアログの XSL オプションタブにて FOP 0.93/1.0 準拠オプションが選択された場合、Helvetica、Times、Courier、そして Symbol という font-family の値だけが XSLT-for-FO に渡されます。ノードにてその他の font-family 値を入力しても、作成される FO ドキュメントでは、そのノードにおける font-family 属性が削除され、デフォルトの Helvetica/ArialMT がそのノードの出力に使用されます。
メニューオプションの (ツール | オプション) からアクセスすることのできるオプションダイアログの XSL オプションタブにて、XSL-FO 標準の仕様全てオプションが選択された場合、テキストスタイルウィンドウにて入力された全ての値が XSLT-for-FO ドキュメントに渡されます。選択されたフォントがフォーマッターで使用できない場合、エラーが返される場合もあります。エラーを回避するには、以下にあるように代替フォントを指定することができます:

 

font-family="Bodoni, Garamond, serif"

 

この例では、Garamond が2番目の使用されるフォントとなり、serif がフォールバックで使用されるフォントとなります。Bodoni も Garamond も使用できない場合、serif フォントが使用されることになります。一般的に使用することができるフォントは、serif (Times または Times New Roman PS MT、Acrobat Reader のバージョンに依存)、sans-serif (Helvetica または ArialMT)、そしてmonospace (Courier) となります。

 

HTML に対するメモ: CSS2 では代替フォントと一般的なフォント(serif、sans-serif、monospace、cursive、そして fantasy).をフォールバックとして使用することができます。

 

フォーマッターがフォントを使用できるようにする

ほとんどのフォーマッターでは既に base 14 フォントを利用することができ、これらのフォントをフォーマッターへ指定するために使用される名前を知ることが重要になります。base 14 フォントはフォーマッターによりサポートされる基本的なフォントですが、フォーマッター固有の方法に従うかたちで、これらのフォント以外にもフォーマッターが扱うことのできるフォントの数を増やすことができます。以下では FOP にてフォントの数を増やす方法について記述されます

 

FOP 内のフォントのサポート

カスタム フォントをセットアップするには以下の2つのステップを踏む必要があります:

 

1.フォントファイルの検索方法を FOP に通知する。
2.フォントの使用方法を FOP に通知する。

 

 

必要なフォントファイルの検索方法

FOP の最近のバージョンでは、システムフォントを自動的に検知、または、ユーザーにより指定されているフォントのためのディレクトリをスキャンし、 FOP に登録することができます。 FOP Web サイトのフォントのページを参照してください。

 

FOP の前のバージョンを使用している場合、フォントメトリックスファイル ( XML ファイル) を必要とされる各フォントのために、 PostScript または TrueType から、最初に生成する必要があります。FOP は、 PFM Reader と TTF Reader に PostScript と TrueType フォントをそれぞれ XML フォントメトリックスファイル変換する機能を与えます。詳細に関しては、 FOP フォントページを参照してください。 FOP 構成ファイル 内で各フォントにより必要とされる メトリックスファイルがそれぞれの font 要素の metrics-url 属性内で指定される必要があります。

 

<font metrics-url="arial.xml" kerning="yes" embed-url="arial.ttf">

  <font-triplet name="Arial" style="normal" weight="normal"/>

  <font-triplet name="ArialMT" style="normal" weight="normal"/>

</font>

 

 

FOP にフォントの使用方法を通知する

FOP 構成ファイルは、fop.xconf と呼ばれる XML ファイルで、 FOP インストールフォルダー内の conf フォルダーに存在します。このファイルを正確に編集することにより、 FOP にフォントの使用方法を通知します。 FOP レンダを希望する各フォントに対して、ドキュメント内の font-要素 プレースホルダにより指定される場所に font 要素 を追加します:

 

<font metrics-url="arial.xml" kerning="yes" embed-url="arial.ttf">

  <font-triplet name="Arial" style="normal" weight="normal"/>

  <font-triplet name="ArialMT" style="normal" weight="normal"/>

</font>

 

上のサンプルのテーブル、

 

metrics-url

メトリックスファイルの URL です。 構成ファイルの font-base 要素 内のパスに絶対的ではない場合、このパスに相対的です。 任意です。

embed-url

フォントファイルの URL です。 (%WINDIR%\Fonts内に通常存在します)。ファイルがローカルシステムに存在しない場合必要とされます。

name

metrics-url および/または embed-url を使用して定義されたフォントへこのフォント名をマップします。

style

metrics-url および/または embed-url を使用して定義されたフォントへこのフォントスタイルをマップします。

weight

metrics-url および/または embed-url を使用して定義されたフォントへこのフォントの太さをマップします。

 

詳細に関しては、次を参照してください: FOP Web サイトで FOP を使用してフォントを登録する.

 

構成ファイルを読み取るためにバッチファイル (fop.bat) を編集する

構成ファイルが、上記のとおり編集されると、  FOP 実行可能ファイル (fop.bat) は、 FOP インストールフォルダー内にある FOP が構成ファイルを読み取ることができるように編集される必要があります。 fop.bat の最後のラインを以下のように変更しておこないます:

 

 "%JAVACMD%" […] org.apache.fop.cli.Main %FOP_CMD_LINE_ARGS%

 

構成ファイルの場所を含むためには以下をおこないます:

 

 "%JAVACMD%" […] org.apache.fop.cli.Main %FOP_CMD_LINE_ARGS% -c conf\fop.xconf

 

FOP Web サイトの FOP の開始 を参照してください。

 

 


 

 

フォントの版権に関するメモ

フォントの使用は著作権法の対象となり、使用に関する条件は一定ではありません。フォントの埋め込みを行う場合、特にフォント全体の埋め込みを行う場合、購入したフォントをそのように使用しても問題が無いか確認する必要があります。

 

文字セット

フォントの文字セットも考慮する必要がある点に注意してください。base 14 フォントでは、ISO-8859-1 により規定される文字の他に、シンボルと Zapf Dingbats フォントにある文字がカバーされます。base 14 フォントによりカバーされない文字がドキュメントに含まれる場合、その文字が含まれる文字セットを含んでいるフォントを使用する必要があります。Arial Unicode のようなフォントには、Unicode によりカバーされる文字が含まれます。

 

メモ: フォントサイズを入力する場合、数値と単位の間にスペースを入力しないように注意してください。例えば、"12pt" は妥当な表記ですが、"12 pt" は不正な入力となります。

 

 

 


(C) 2019 Altova GmbH