pptTeXの動作に必要なpstoeditの動作に必要なghostscriptにはバージョン制限がある?
結論
- texliveを使っているときにpptTeXを使いたい場合、Pathにghostscript(以下gs)の場所を追加する必要がある。
- この記事を書いている時点でgs9.52まで出ているが、ppttex、もといpstoeditとの互換性が保たれているのは9.26まで?*1のようなので、gs9.26をインストールしないと動かない。
- texlive2019のインストール時にgs9.26もインストールされる*2が、単独の呼び出しは想定していないためpstoeditとの互換性がなく、別個にgs9.26をインストールする必要がある。
PowerPointでTeXによる数式を入力する際に便利なのがpptTeXである。
PCを買い替えたため、TeX周辺と合わせてインストールしていたところ、pptTeXの画像の出力がうまくいかない。pptTeXの一時ファイルの出力先である
AppData\Local\Temp\pptTeX
内のファイルを見ると、epsの出力までは成功しているが、emfの変換に失敗していた。変換するのはpstoeditの役割らしい。
コマンドプロンプトでpstoeditを使い、直接変換しようとすると、ghostscript(以下gs)の呼び出しに失敗していることが分かった。
gsはtexliveのインストール時に
texlive\2019\tlpkg\tlgs\bin
内にインストールされるため、これを環境変数のPathに追加して再度試すと
GPL Ghostscript 9.26: Can't find initialization file gs_init.ps.
というエラーが出る。ググってみると、texliveに同梱のgsはコマンドでの呼び出しに対応していないらしい。
上記のサイトはtexlive2017のものだが、おそらくそれ以降も同じなのだろう*3。
gsを別個にインストールする必要があるらしい。現時点での最新版の9.52をインストールして試すと、なぜかエラーが出る。
GPL Ghostscript 9.52: Unrecoverable error, exit code 1
Unrecoverableて。
ググってみると、gs9.26まではpstoeditに対応していたのが、gs9.27から互換性がなくなったという報告があった。
pstoedit3.74以降ならそのバグは消えているというようなことも書いてあるが、現時点でpstoeditの公式からダウンロードできるのはpstoedit3.71だった。
なぜか"binary for Windows 64 bit"がリンク切れしており、"alternate URL"でダウンロードできるのは3.71になっている。
pstoeditのバージョンを上げるのは難しそうだったので、gs9.26をインストールする。
上記の"gs926aw32.exe"に当たる。pstoeditで呼び出すのは32bit版のようなので、32bit版をインストールした*4。その後
C:\Program Files (x86)\gs\gs9.26\bin
をPathに追加したところ、きちんと画像が出力されるようになったので一安心。
参考