6.6 外字フォント
外字フォント
biz-Stream では、自由コード領域(Shift_JIS:F040-F9FC、UNICODE:E000-E757)に登録されている文字をPDF に埋め込むことが可能です。フォント種類を指定するための属性として、一般の 「Font / fontfamily」属性とともに「GaijiFont / gaijifont -family」属性が用意されており、XML ページレイアウト情報上では、こちらの属性に指定を行うことで外字を埋め込むことができます。ただし、埋め込みフォントと同じく、ご利用前にはbsxml.dtd、pdf.properties への追加設定作業が必要となります。
追加設定の手順
-
bsxml.dtd に、biz-Stream で使用するフォント名(任意)を追加します。
a) 横書きフォントの場合: dFont エンティティに追加
b) 縦書きフォントの場合: dVFont エンティティに追加
- 横書きテキスト
- 外字フォントは縦書きに未対応のため、縦書きテキスト
、リンク付き縦書きテキスト 、複数行縦書きテキスト では使用できません。
-
pdf.properties に、フォントの詳細を追加します。
次の<フォント名>部分には、「bsxml.dtd」で指定したフォント名を指定してください。a)embedded.font.XXXXXXXX.file=(フォントファイル名)(※1)※1 フォントファイルがインストールされているディレクトリを含めた指定を行ってください。
b)embedded.font.XXXXXXXX.type=type0identity(固定)
c)embedded.font.XXXXXXXX.encoding=PDFEmbeddedIdentity_H(固定)
- プロパティファイルを修正した際に、ASCII 文字以外の文字(日本語など)が含まれている場合は、JDK のnative2asciiなどのツールでASCII 文字のみ含まれる形に変換する必要があります。
追加設定サンプル
-
「DF 隷書体」を横書き外字フォントとして設定するサンプルです。
bsxml.dtd のdFont エンティティに、「embgaiji」の名前で追加します。<!ENTITY % dFONT "Arial | Century | ・・・・・・・ | embgaij">
-
pdf.properties に、「embgaiji」の詳細を指定します。
embedded.font.embgaiji.file=C:/Windows/Fonts/hyougai.tte
embedded.font.embgaiji.type=type0identity
embedded.font.embgaiji.encoding=PDFEmbeddedIdentity_H
レイアウト・デザイナの設定
-
レイアウト・デザイナで外字フォントを利用するには、フォント設定で外字フォント名「embgaiji」を追加します。
設定後はレイアウト・デザイナの再起動が必要です。
-
フォント設定はレイアウト・デザイナ ガイド『4.5 フォント設定』をご参照ください。
-
フォント設定はレイアウト・デザイナ ガイド『4.5 フォント設定』をご参照ください。
-
レイアウトファイルの作成を行います。
ページレイアウトに、埋め込みフォントを設定したいレイアウトオブジェクトを配置します。
そのオブジェクトのプロパティの GaijiFont/gaijifont-family 属性に上記で追加した埋め込みフォント名を設定します。
(例)<Label Name="test" GaijiFont="embgaiji" ・・・/>
追加設定サンプル実行結果
-
追加した「embgaiji」を使用してPDF ファイルを生成します。
XML ページレイアウト情報に直接文字を指定する場合、符号化宣言で必ずUTF-8 を指定してください。
-
生成したPDF ファイルのフォント情報には、「埋め込みサブセット」と表示されます。
注意事項
- 埋め込みで使用されるフォントは、各フォントの使用許諾契約書にもとづき、お客様の責任においてご利用ください。
- TrueTypeフォントがご利用できます。
- プロポーショナルフォントには対応していません。
- XML ページレイアウト情報に直接外字を指定する場合、符号化宣言でUTF-8 を指定する必要があります。
- XML ページレイアウト情報外部からデータとして渡される場合は、符号化宣言で指定する文字コードに制限はありません。
- pdf.properties への追加作業時には、次の設定を変更しないようご注意ください。
embedded.cache=true
embedded.bold=0.02
embedded.italic=11
embedded.name.encoding.1=1,0,0,8859_1
embedded.name.encoding.2=3,0,1033,Cp437
embedded.name.encoding.3=3,1,1033,UnicodeBig
embedded.name.encoding.4=1,1,11,Shift_jis
embedded.name.encoding.5=3,1,1041,UnicodeBig
embedded.name.encoding.6=1,0,1041,Shift_jis
-
pdf.propertiesに外字フォント設定のサンプルとして記載されている下記の部分は、インストールした環境に応じて修正する必要があります。
embedded.font.embeudc.file=/bs/sample/fonts/sample.tte の「/bs」の部分は、実際にbiz-Streamライブラリをインストールしたフォルダのパスに変更してください。# Sample gaiji
embedded.font.embeudc.file=/bs/sample/fonts/sample.tte
embedded.font.embeudc.type=type0identity
embedded.font.embeudc.encoding=PDFEmbeddedIdentity_H
embedded.font.embeudc.converter=SJIS