最近lprがらみのトラブルでいろいろ調べていたのでメモ。
発生した問題はevinceやlprコマンドでpdf,dvi,psなどを印刷する際にたまに漢字1文字が欠けたりとか、そもそも日本語が化けまくったりとか。
この方法を使えば様々なフォント(ttf,ttc,otf)を埋め込めますがMSゴシックとかはライセンス違反になるので注意(´ω`)
ちなみに\bfの太字とかもきちんと表示されます。
もっとスマートな方法があるのかもしれないけど知りません!pdfの状態で印刷しても問題無い場合はそれで良いと思います。
まずはapt-getでIPAフォントをインストール。(ttf-ipafontだけでいいかも)
sudo apt-get install ipafont ttf-ipafont
そして、texソースコードと同じディレクトリにipaf.mapなどの適当な名前で以下の内容のファイルを作成。
rml H ipam.ttf
rmlv V ipam.ttf
gbm H ipag.ttf
gbmv V ipag.ttf
texソースコードをコンパイル。たぶんEUC-JPの方がいい。
platex test.tex
IPAフォントを埋め込んだpdfファイルを作成。
フォントが見つからないとかエラーが出る場合はとりあえずtexソースコードと同じディレクトリにipam.ttfとipag.ttfを持ってくる。
dvipdfmx -f ipaf.map test.dvi
IPAフォントを埋め込んだpdfファイルからpsファイルを作成。
pdf2ps test.pdf test.ps
できたpsファイルをlprで印刷。
印刷ページの指定とかしたい場合はevinceでpsファイルを開いて印刷するといいです(´ω`)
lpr test.ps
これで印刷して化ける場合はps2psでラスタライズしてしまうといい。ただしファイルサイズが大きくなるのでネットワーク経由で印刷する場合は注意。
ps2ps test.ps test_tmp.ps
lpr test_tmp.ps
[おまけ]
フォントとかどうでもよくてとりあえず文字化けしないように印刷したい場合は以下のようにやるといいです。
platex test.tex
dvips test.dvi
ps2ps test.ps test_tmp.ps
lpr test_tmp.ps
1 件のコメント:
This is a great posting I have read. I like your article. Thank you
コメントを投稿