6.7.2 フォントエンコーディングの設定方法
フォントエンコーディングの設定方法は以下のとおりです。
非埋め込みフォントの場合
非埋め込みフォントの場合は <Label> や <multi-text> などのオブジェクトごとにフォントエンコーディングを設定するか、または bsfont.properties で一括指定することが可能です。
1オブジェクトごとに FontEncoding / font-encoding を設定する場合
2 bsfont.properties で一括指定する場合
bsfont.properties では、MSゴシック・MS明朝などの日本語フォントのエンコーディングはデフォルトで「90ms-RKSJ-H / V」「90msp-RKSJ-H / V」(SJIS系)になっていますが、「UniJIS-UTF16-H/ V」 に変更することも可能です。ただしプロパティファイルの変更はシステム全体の非埋め込みフォントに影響し、複数の帳票に影響するため、事前に十分な確認を行ってください。
bsfont.properties 一部抜粋(非埋め込みフォントのエンコーディング設定)
#fontencoding.msgothic=90ms-RKSJ-H
#fontencoding.vmsgothic=90ms-RKSJ-V
#fontencoding.msmincho=90ms-RKSJ-H
#fontencoding.vmsmincho=90ms-RKSJ-V
#fontencoding.mspgothic=90msp-RKSJ-H
#fontencoding.mspmincho=90msp-RKSJ-H
#fontencoding.msuigothic=90msp-RKSJ-H
#fontencoding.vmsuigothic=90msp-RKSJ-V
fontencoding.ipagothic=UniJIS-UTF16-H
fontencoding.vipagothic=UniJIS-UTF16-V
fontencoding.ipamincho=UniJIS-UTF16-H
fontencoding.vipamincho=UniJIS-UTF16-V
fontencoding.ipapgothic=UniJIS-UTF16-H
fontencoding.ipapmincho=UniJIS-UTF16-H
fontencoding.ipauigothic=UniJIS-UTF16-H
- 非埋め込みフォントにて UniJIS-UTF16-H を指定した場合は、pdf.properties の rksj.encoding の設定は無視されます。
埋め込みフォント、ダイナミックフォントの場合
userfont.propertiesでエンコーディングを指定します。
(埋め込みフォント例)
# IPA
#embedded.font.Embedded_IPAPGothic.file=C:/WINDOWS/Fonts/ipagp.ttf
#embedded.font.Embedded_IPAPGothic.type=type0identity
#embedded.font.Embedded_IPAPGothic.encoding=PDFEmbeddedIdentity_H
#embedded.font.Embedded_IPAPGothic.cmap=3,10(※1)
(ダイナミックフォントフォント例)
# IPAmjMincho
#load.font.unicode.Dynamic_IPAmjMincho.file=C:/Windows/Fonts/ipamjm.ttf
#load.font.unicode.Dynamic_IPAmjMincho.encoding=PDFIdentity_H
#load.font.unicode.Dynamic_IPAmjMincho.cmap=3,10(※1)
#load.font.unicode.Dynamic_IPAmjMincho.ivscmap=0,5(※2)
- ※1サロゲートペアを表示する場合に設定が必要です。
- ※2異体字セレクタを表示する場合に設定が必要です。
- v5.2から、非埋め込みフォントは bsfont.properties に定義し、ユーザが追加する埋め込みフォント、ダイナミックフォント、外字フォントは userfont.properties で定義するようになりました。
詳細は「3.4 v5.2におけるpdf.propertiesの互換性」を参照してください。 - ~.properties の変更後はアプリケーションを再起動して、変更内容を反映させてください。
