中途半端にplatex一式がインストールされたUbuntu 10.04でpowerdotを動かしたときの記録
TeXでプレゼンテーションの資料を作りたくなってpowerdotをインストールしたのだが、TeX環境のインストールが不完全だったので動くようになるまで試行錯誤が必要だった。
http://homepages.inf.ed.ac.uk/s0675112/powerdot_intro/powerdot.html を参考にしたが、システムグローバルな部分にパッケージで管理されているもの以外を極力インストールしたくないので、いつも通りスタイルファイルを追加する要領でホームディレクトリへのインストールを行った。
そして、サンプルファイルをダウンロードしてタイプセット。ここまでは順調だった。最初の問題はdvipsの時点で発生した。
$ dvips powerdot-styletest.dvi This is dvips(k) 5.98 Copyright 2009 Radical Eye Software (www.radicaleye.com) ' TeX output 2010.07.16:0046' -> powerdot-styletest-jp.ps dvips: ! Bad VF file goth10.vf: character code out of range
Ubuntu 10.04 + Japanese Team Repositoryのdvipsk-jaパッケージは依存関係が壊れているのでローカライズされていないdvipskで今までがんばっていたのだけれども、どうも調べてみるにここに来て問題が顕在化したらしい。
ありがたいことに依存関係を直したdvipsk-jaパッケージを提供してくださっている方がいたので、それを使わせていただくことにした。
インストール後にdvipsコマンドを実行したところ、rml-jis関連のエラーが出たような気がするが、残念ながら記録が残っておらず、入れたパッケージなどを消してみても再現しない。きちんとエラー出力を残しておくべきだったなあ。こんなエラーだったはず(Web上で見つけたよく似たエラーのコピーペースト)。
kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+359/600 --dpi 959 rml-jis mktexpk: don't know how to create bitmap font for rml-jis.
これに関してはjisftconfig addをrootで走らせて解決した*1。以前にTeXをインストールしたときに実行してるはずだけれど、dvipsk-jaのインストール後にもう一回実行する必要があったのかもしれない。
(記憶によれば)これでdvipsはエラーなく処理が終わるようになった。しかし、出てきたpsファイルをgvコマンドで表示してみると日本語部分が完全にアルファベットと記号に化けていた。gvコマンドのエラー出力をみるとRyumin-LightがGhostScript下にないと言ったエラーが出ていたように思う。これはdvips側ではなくpsファイルのビューア側の問題らしいので*2 https://wiki.ubuntulinux.jp/JapaneseLocalizedDerivative/LaTeXForJapanese にあるパッケージ
- xpdf-japanese
- gs-cjk-resource
- poppler-data
をインストールしたところ文字は正しく表示されるようになった。psファイルの文字化けに対してはgs-cjk-resourceが、ps2pdfでPDFに変換した後のevinceのエラーメッセージ
Error: Missing language pack for 'Adobe-Japan1' mapping
にはpoppler-dataが効いたのだったような覚えがある*3 *4。
さて、PDFまで作成できたわけだができあがったPDFをみてみると何かがおかしい。スライドのサイズはpaper=screenになっておりスクリーン投影用の4:3であるが、よく見みると右側が切れてほぼ正方形になっている。探してみるとそのものなQAがあった。
dvipsのconfig.psが古いとのことである。しかし、dvipsは先ほど日本語対応のものをインストールしたばかりであるから更新する必要があるとは考えたくないので、回答に書いてあることを信じてconfig.psだけ最新版にすることを試みた。dvipsk-jaのconfig.psは/etc/texmf/dvipsj/config.psに、dvipskのconfig.psは/etc/texmf/dvips/config/config.psにある。dvipskのconfig.psをみてみると、確かにscreen用の記述がみられる。
@ screen 8.25in 11in @+ ! %%DocumentPaperSizes: Screen @+ %%BeginPaperSize: Screen @+ /setpagedevice where @+ { pop << /PageSize [594 792] >> setpagedevice } @+ if @+ %%EndPaperSize
そこでとりあえずバックアップをとってdvipsk-jaのconfig.psをdvipskのconfig.psで上書きしてみた。すると次のようなエラーになった。
$ dvips powerdot-styletest-jp.dvi This is pdvips(k) p1.7b Copyright 2010 ASCII MEDIA WORKS. (ptex-staff@ml.asciimw.jp) based on dvips(k) 5.98dev Copyright 2010 Radical Eye Software (www.radicaleye.com) ' TeX output 2010.07.16:0046' -> powerdot-styletest-jp.ps kpathsea: Running mktexpk --mfmode ljfour --bdpi 600 --mag 2+186/600 --dpi 1386 gbm mktexpk: don't know how to create bitmap font for gbm. kpathsea: Appending font creation commands to missfont.log. dvips: Font gbm not found; using cmr10 dvips: ! invalid char 9267 from font gbm
またフォント関連でエラーが発生している。config.ps中にあったフォントの設定を移さなければならないのだろうと見当をつけて読んでみると、dvipsk-jaに含まれていたconfig.psには
p +psfonts_jp.map
という記述があった。これを追加したところエラーが発生しなくなり、正しいサイズのスライドが出力されるようになった。
はあ、やっとこれでスライドが作れる……
*1:http://lists.debian.or.jp/debian-users/200202/msg00239.html, http://lists.debian.or.jp/debian-users/200202/msg00240.html
*2:http://lists.debian.or.jp/debian-users/200301/msg00268.html
*3:http://www.momonga-linux.org/archive/Momonga-users.ja/msg00531.html
*4:普通にPDFファイルを表示するためにも必要なパッケージだから入れてなかったのが驚きだけど