今,私はBeamerを用いてプレゼンスライドを作成しておりまして,その中で使用する図に日本語を含むepsファイルであるpropsystem.epsがあります.Ghostscriptに脆弱性が見つかったとの報告が出る前まではそのバージョン7.07を用いていたのですが,それが見つかって以来バージョン8.71を用いていました.このたび,8.71のせいでdvipdfmxでエラーが出ました.他にもこのような現象でお悩みの方もいらっしゃるかと思いましたので,記事にしておきます*1.
エラーメッセージは以下のとおり.警告も出ています.
** WARNING ** Filtering file via command -->gswin32c -q -dNOPAUSE -dBATCH -sPAPE RSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dAutoFilterGrayImages=false -dAutoFilterColorImages=false -dGrayImageFilter=/FlateEncode -dColorImageFilter =/FlateEncode -dUseFlateCompression=true -sOutputFile=C:/Users/Tomu/AppData/Loca l/Temp/dvipdfmx.a0372800004 -c .setpdfwrite -f ../../images/presen/propsystem.ep s -c quit<-- failed. ** WARNING ** Image format conversion for "../../images/presen/propsystem.eps" f ailed... ** ERROR ** pdf_ref_obj(): passed invalid object. Output file removed.
原因はよくわかりませんが,7.07を使用しているときにはこのような現象は出ませんでした.脆弱性が発見されているなか,旧バージョンを用いるのもばかげた話なので,2011/02/22現在最新の9.01をダウンロードしてインストールし,環境変数を調整して,dvipdfmxを実行した結果,このような現象は起こりませんでした.
もしこのようなエラーが起こり,Ghostscriptのバージョンが8.71であれば,9.01へアップグレードしてみることをおすすめいたします.
*1:ちなみに,Ghostscript 8.71については再インストールをおこなってみましたが,本記事で紹介している現象は変わりませんでした.