Tex_GS_Defoma のバックアップ(No.1) - アールメカブ

アールメカブ


Tex_GS_Defoma のバックアップ(No.1)


Texの備忘録

以下,ここの引用

日本語表示に必要なpackage

_ gs-cjk-resource

_ cmap-adobe-japan1

_ cmap-adobe-japan2

intrepidではこれらを導入しても日本語が表示できない。

[対処]

CIDFont用の設定ファイルcidfmapは

_ /usr/share/ghostscript/8.61/lib/cidfmap

_ /var/lib/defoma/gs.d/dirs/fonts/cidfmap

と2箇所に存在するが、後者のdefoma以下のcidfmapは読み込まない。

hardyではdefoma以下の

_ /var/lib/defoma/gs.d/dirs/fonts/Fontmap

_ /var/lib/defoma/gs.d/dirs/fonts/CIDFnmap

が読まれているが、8.10(intrepid)では、

_ /var/lib/defoma/gs.d/dirs/fonts/Fontmap

のみ。

元々、ghostscriptではCIDFnmapなどという設定ファイルは使わなくなったはずで、 これは古いcjk patchの名残りであろうか。

intrepidでは/var/lib/defoma/gs.d/dirs/fonts/CIDFnmap を読まなくなっために、 日本語が表示できなくなったみたい。/usr/share/ghostscript/8.63/lib/cidfmapを修正すると 日本語が表示できるようになる。(/var/lib/defoma/gs.d/dirs/fonts/cidfmapの内容をコピー)

正しい解決法は/var/lib/defoma/gs.d/dirs/fonts/cidfmapを読みこむようにghostscriptを修正することだが、 詳細は不明。

[未解決]

defomaによるフォント設定との関係がわからない。

[補足] Ghostscriptでの日本語フォントの扱い

_ CID Fontの扱い方

http://www.ghostscript.com/doc/current/Use.htm#CIDFontSubstitution

CID Font ResourceとCMapを組み合わせて利用し、Postscript文書のなかでは、 /CIDFont-CMap findfont といった命令を用いる。

CID Font Resourceは/Resource/CIDFontの下に置く。通常のFont検索パスでは 見つけられない。

_ CID Font substitution

CID Fontの置き換えとTrueType?での代用。

ghostscriptの設定ファイルlib/cidfmapで指定する。

(1) 簡単な置換 /Substituted /Original ; 行末に必ず空白を開けて;

(2) Truetypeフォントで置き換え /Substituted << keys&values >> ;

Key Type Description /Path string TrueType?フォントファイルへのパス情報。絶対パスでもよいが、-dSAFER オプションが指定されているときには、許可された場所にフォントファイルを置かなくてはいけない。 /FileType? name 必ず /TrueType?. /SubfontID integer (省略可) TTC等のフォントコレクション内のインデックス。Pathの指定先がコレクションでないときは無視される。コレクション内の最初のフォントのインデックスはゼロ。省略時はゼロ。 /CSI array of 2 or 3 elements (必須) CIDSystemInfo?を構築するための情報。2つの要素が指定されたとき、最初の要素はOrderingをあらわす文字列、2番めはSupplementをあらわす数値。 3つの要素が指定されたとき、最初の要素はRegistryをあらわす文字列、2、3番めはOrderingとSupplement。

/MS-Mincho << /FileType? /TrueType? /Path (C:/WINDOWS/fonts/msmincho.ttc) /SubfontID 0 /CSI [(Japan1) 3] >> ; /Ryumin-Light /MS-Mincho ;