2011年5月2日月曜日

dvipdfmxでのfont埋め込み

まず, どっかから, フォントをインストールしてくる. 例として, IPAフォントを, debパッケージでインストールした場合で話を進める

そのあとは,

$ sudo mkdir /usr/share/texmf/fonts/truetype
$ sudo ln -s /usr/share/fonts/truetype/ipafont-jisx0208/ipam0208_for_legacy_compatibility.ttf /usr/share/texmf/fonts/truetype/ipam.ttf
$ sudo ln -s /usr/share/fonts/truetype/ipafont-jisx0208/ipag0208_for_legacy_compatibility.ttf /usr/share/texmf/fonts/truetype/ipag.ttf
$ sudo ln -s /usr/share/fonts/truetype/ipafont-jisx0208/ipamp0208_for_legacy_compatibility.ttf /usr/share/texmf/fonts/truetype/ipamp.ttf
$ sudo ln -s /usr/share/fonts/truetype/ipafont-jisx0208/ipagp0208_for_legacy_compatibility.ttf /usr/share/texmf/fonts/truetype/ipagp.ttf


として, フォントのシンボリックリンクをはる(Windowsだと、シンボリックリンクを作るより、フォントをまるごとコピーした方が簡単かもしれない). これは, texでフォントのある場所を特定させるためにやっている. Linuxの場合はシンボリックリンクを作っておけば, 元のファイルのコピー(みたいなもの)として機能する. さて, シンボリックリンクをはったら

$ sudo mktexlsr
$ sudo update-texmf


として, texのデータを更新しておく(Windowsでは、多分不要).

次に,

############## ここから
%%
%% embedding ipa fonts
%%
%
rml H ipam.ttf
gbm H ipag.ttf
rmlv V ipam.ttf
gbmv V ipag.ttf
% 
##########ここまで


なファイルを作り, /etc/texmf/dvipdfm/ipa.map として保存する. これで準備は完了.

実際に埋め込みpdfを作るには

$ dvipdfmx -f ipa.map hogehoge.dvi


とすればよい(何かエラーらしきものがでているが, どうやら, フォントの名前の一部を省略しているようす. pdfの出力に問題はなさそうなので, 気にしないことにする).

ついでにdebian lennyの頃は

$ sudo ln -s /etc/texmf/dvipdfm /etc/texmf/dvipdfmx


としておくと, Could not open config file “fontmapsx”というエラーがでなくなるが, squeezeでは不要だと思う. というよりは, やっちゃいけなさそう(dvipdfmxフォルダがあるため).


追記: squeezeになって, やり方はこのままでいいのだが, ファイルのおいてある場所が微妙に変更されている.

0 件のコメント:

コメントを投稿