.epsファイルの変換の失敗

.epsファイルの変換の失敗

- Tetsuo Tamai の投稿
返信数: 18
すでに「 .epsファイルを含むファイルのdvipdfmxが行えない」というスレッドがありますが,現象的には同様な事態です.ただ,そこでのやりとりとは違う原因と思われる状況です.前のやりとりでは,rungsにパスが通っているかとか,コマンドラインからrungsを起動できるかということが言われていますが,それは問題ありません.コンパイルしたときのメッセージは

dvipdfmx:warning: Filtering file via command -->rungs -q -dALLOWPSTRANSPARENCY -dSAFER -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dAutoRotatePages=/None -sOutputFile='C:/Users/tamai/AppData/Local/Temp/dvipdfm-x.c1b405d6b9591c4c1949491da4636031' './civileng.eps' -c quit<-- failed.

dvipdfmx:warning: Image format conversion for "./civileng.eps" failed...

dvipdfmx:fatal: Image inclusion failed for "civileng.eps".


コマンドラインからrungs -q civileng.eps とすると正しく表示されます.

dvipdfmxでなく,dvioutを試してみると,やはりエラーになり,そのメッセージは次の通りです.

Failed to make civileng.pbm by the command

c:/texlive/2021/tipkg/tigs/bin/gs32c.exe @tmp$.@@@

The file @tmp$.@@@ is a parameter file.


なお,\usepackage[dvipdfmx]{graphicx}として使っています.


Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- Akira Kakuto の投稿
civileng.eps
を添付されると、どなたかが答えてくださるかもしれません。

なお、信頼できないソースの場合、どんなプログラムでも
実行できるというセキュリティの問題があるため、
TL2021 ではデフォルトでは dviout で eps を表示できない
ようにされています。面倒ですが以下のようにすると
dviout で表示できる可能性があります。

(1) 表示された warning message window で
  (I)gnore this graphic?
    を選択する。

(2) 次のタブを開く
  Option --> Setup Parameters... --> Graphic
  tab

(3) "gsx:" edit box においてコマンド名
  .../gswin32c.exe
    の後にスペースを一つおいて
    -dNOSAFER を加える

(4) OK button をクリックする。

Akira Kakuto への返信

Re: .epsファイルの変換の失敗

- Tetsuo Tamai の投稿
回答ありがとうございます.「-dNOSAFER を加える」を試してみましたが,変化はありませんでした.civileng.epsを添付しますが,前回も書きましたように,rungsにこれを直接適用すると,きちんと表示されます.
なお,初めてなのでこのフォーラムの使い方がよく分かっていませんが,このご回答にはreplyタグが付いていたのでそれを利用しています.「はやて」さんからいただいた回答にはそのタグがなかったので,byで示されている回答者の名前をクリックしてメッセージを作成し,送信ボタンを押したところメールで送信したというメッセージが出ましたが,フォーラムに表示されないので届いたかどうかが分かりません.
Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- Akira Kakuto の投稿
以下のソースにて、
latex test
dvipdfmx test
とすると、問題なく添付の test.pdf ができました。(TeX Live 2021 W32)。
dvipdfmx を global option としていることに注意して下さい。

% test.tex
\documentclass[12pt,dvipdfmx]{article}
\usepackage{graphicx}
\begin{document}
\includegraphics[width=10cm]{civileng.eps}
\end{document}

なお、dviout の場合は

%testdviout.tex
\documentclass[12pt]{article}
\usepackage{graphicx}
\begin{document}
\includegraphics[width=10cm]{civileng.eps}
\end{document}

に対して
latex testdviout
dviout testdviout

とすると、2度出てくる警告 Window でともに 無視(I) を選び、
その後、前に述べた (2), (3), (4) を実行すると、ちゃんと
civileng.eps が dviout によって表示されました。(TeX Live 2021 W32).

何も option を付けないと、latex により dvips がデフォルトとなり、
dviout に適合します。
Akira Kakuto への返信

Re: .epsファイルの変換の失敗

- Akira Kakuto の投稿
> 2度出てくる警告 Window でともに 無視(I) を選び

訂正します。2度は間違い。

出てくる警告 Windows で無視(I) を選び
Akira Kakuto への返信

Re: .epsファイルの変換の失敗

- Tetsuo Tamai の投稿
大変ありがとうございました.このtestがうまくいっただけでなく,もともと作っていた原稿もうまくいきました.ただ,改めて初歩的な質問ですが,TeXWorksのRunでpLaTex(ptex2pdf)を選んで実行すると,
dvipdfmx:fatal: Unable to open "test.pdf".
というメッセージが出てうまくいきません.これは書き込みパーミッションがないという問題でしょうか.あるいは一度同じ名前のpdfファイルができると,デフォールトでは上書きできないということでしょうか.
Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- Akira Kakuto の投稿
> dvipdfmx:fatal: Unable to open "test.pdf"

おそらく、他のプログラム (たとえば Acrobat Reader)
が test.pdf をオープンしていて、ロックされて
いるのでしょう。

同じ名前の上書きは問題なくされます。
Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- ut の投稿

> このtestがうまくいっただけでなく,もともと作っていた原稿もうまくいきました.

うまくいかれてなによりです。ところで、どうやって、うまくいかれたのですか?
(または、うまくいかなかった原因は何だったのですか?)

最初のご投稿で:

> すでに「 .epsファイルを含むファイルのdvipdfmxが行えない」というスレッドがありますが,

とおっしゃっているのは、8 年前の:

  .epsファイルを含むファイルのdvipdfmxが行えない
  2013年 10月 29日(火曜日) 03:04
  https://okumuralab.org/tex/mod/forum/discuss.php?d=1121

のことだと思うのですが、実は、10 日ほど前にも同様のご投稿がありました:

  pdf化できないものがあります……
  2021年 04月 21日(水曜日) 23:32
  https://okumuralab.org/tex/mod/forum/discuss.php?d=3086

このご投稿によりますと、dvipdfmx から:

  dvipdfmx:warning: Filtering file via command -->rungs -q -dALLOWPSTRANSPARENCY -
  dSAFER -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibil
  ityLevel=1.5 -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoF
  ilterColorImages=false -dColorImageFilter=/FlateEncode -dAutoRotatePages=/None -
  sOutputFile='C:/Users/kappy/AppData/Local/Temp/dvipdfm-x.597f9bce019e2cda33f19fe
  72eee1e92' './Exercise02.eps' -c quit<-- failed.

という warning が出ていたとのことなのですが、今回の Tetsuo Tamai さんのご投稿でも:

  dvipdfmx:warning: Filtering file via command -->rungs -q -dALLOWPSTRANSPARENCY -
  dSAFER -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibil
  ityLevel=1.5 -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoF
  ilterColorImages=false -dColorImageFilter=/FlateEncode -dAutoRotatePages=/None -
  sOutputFile='C:/Users/tamai/AppData/Local/Temp/dvipdfm-x.c1b405d6b9591c4c1949491
  da4636031' './civileng.eps' -c quit<-- failed.

と、同じ warning となっています。

10 日前の別のご投稿の際には結局原因は分からず終いでしたので、当初うまくいかなかった
原因について何かお心当たりがあれば、教えていただけましたら嬉しいです。

(10 日前のご投稿も、今回のご投稿も、ユーザー名は欧文で、また、どちらの場合も、
問題の eps ファイルは Ghostscript で pdf に出来るようなのですけれど…)
Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- Tetsuo Tamai の投稿
たびたびすみません.コマンドでpLatex -> dvipdfmx を実行するとうまくいくのに,TeXWorksで実行するとうまくいかないという現象について,説明が違っていました.確かに上に書いたようにファイルがオープンできないと言われるケースもありましたが(それはまさしくご指摘のようにAcrobat Readerが占有していたのでした),そうでなくて前と同じ次のようなメッセージが出ます.

dvipdfmx:warning: Filtering file via command -->rungs -q -dALLOWPSTRANSPARENCY -dSAFER -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dAutoRotatePages=/None -sOutputFile='C:/Users/tamai/AppData/Local/Temp/dvipdfm-x.c1b405d6b9591c4c1949491da4636031' './civileng.eps' -c quit<-- failed.

dvipdfmx:warning: Image format conversion for "./civileng.eps" failed...

dvipdfmx:fatal: Image inclusion failed for "civileng.eps".

同じdvipdfmxが動いているはずなのに(texlive2021をインストールしたばかりです),どうしてでしょうか.

Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- 和田 勇 の投稿
誰も答えていないので。


> そうでなくて前と同じ次のようなメッセージが出ます


OS 再起動し、TeXworks のみ起動している状態でも再発しますか?

もし再発するのであれば、
特定のファイルをオープン(ロック)しているプロセスがあるか調べるには https://laboradian.com/win-find-files-locked-by-process/ を参考にして見てください。

調べるファイルは OutputFile= 以降に表示されていますいるファイルパスです。

PS
操作している状況が今一つ掴みきれないので、解決できない場合は 設定情報をアップロードしていただく必要もあるかと考えています。設定情報は、通常以下のところに作成されています。


%USERPROFILE%\.texlive2021\texmf-config\texworks\configuration\tools.ini
%USERPROFILE%\.texlive2021\texmf-config\texworks\TUG\TeXworks.ini
和田 勇 への返信

Re: .epsファイルの変換の失敗

- はやて (h20y6m) の投稿

状況を整理したいのですが、

  • dviout による表示は出来るようになった。
  • コマンドプロンプトで dvipdfmx を実行した場合はうまくいく。
  • TeXworks から pLaTeX (ptex2pdf) を選んでタイプセットすると失敗する。

ということであっているでしょうか?


上記があっているとして、

1) コマンドプロンプトで ptex2pdf -l <ファイル名> を実行した場合はどうなりますか? 成功なら TeXworks、失敗なら ptex2pdf が怪しいということになります。

2) TeXworks のときだけ失敗するのであれば 「編集」→「設定」→「タイプセット」の「TeXおよび関連プログラムのパス」を確認して 必要なパスが設定されているか、古いバージョンのパスが含まれていないか等を調べてみてください。

3) 失敗したときの Ghostscript の出力を見るために、 C:\texlive\2021\texmf-dist\dvipdfmx\dvipdfmx.cfgC:\Users\<ユーザー名>\texmf\dvipdfmx\dvipdfmx.cfg にコピーして、 D "rungs -q -dALLOWPSTRANSPARENCY から始まる行があるのでこの -q を削除します。 これで dvipdfmx 実行時に Ghostscript のエラーメッセージが表示されるはず。


「はやて」さんからいただいた回答にはそのタグがなかったので,

すみません長いコマンドを一行に書いてしまったため右側に大きくはみ出してしまったようです。

byで示されている回答者の名前をクリックしてメッセージを作成し, 送信ボタンを押したところメールで送信したというメッセージが出ましたが, フォーラムに表示されないので届いたかどうかが分かりません.

確認したらメールが届いていました。

はやて (h20y6m) への返信

Re: .epsファイルの変換の失敗

- Tetsuo Tamai の投稿
確認事項のうち「dviout による表示は出来るようになった」は実はまだ試していません.dvipdfmxがコマンドラインから動作するので,当面の目的にはそれで行けるからです.
1) コマンドプロンプトで ptex2pdf -l <ファイル名> を実行した場合はどうなりますか? 成功なら TeXworks、失敗なら ptex2pdf が怪しいということになります。
につきましては,成功です.
「TeXおよび関連プログラムのパス」は見てみましたが,とくに問題はないように思われます.
失敗したときの Ghostscript の出力を見るために…」はやってみましが,やり方が悪いのか,とくにメッセージの内容は前と変わらないようです.TeXWorksの「ログの表示」を見ればよいのですね? 表示は,次のようで,-q が消えていることは分かるかと思います.

This is ptex2pdf[.lua] version 20200520.0.

Processing test.tex

This is e-pTeX, Version 3.141592653-p3.9.0-210218-2.6 (utf8.sjis) (TeX Live 2021/W32TeX) (preloaded format=platex)

restricted \write18 enabled.

entering extended mode

(./test.tex

pLaTeX2e <2020-10-01>+2 (based on LaTeX2e <2020-10-01> patch level 4)

L3 programming layer <2021-02-18>

(c:/texlive/2021/texmf-dist/tex/latex/base/article.cls

Document Class: article 2020/04/10 v1.4m Standard LaTeX document class

(c:/texlive/2021/texmf-dist/tex/latex/base/size12.clo))

(c:/texlive/2021/texmf-dist/tex/latex/graphics/graphicx.sty

(c:/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty)

(c:/texlive/2021/texmf-dist/tex/latex/graphics/graphics.sty

(c:/texlive/2021/texmf-dist/tex/latex/graphics/trig.sty)

(c:/texlive/2021/texmf-dist/tex/latex/graphics-cfg/graphics.cfg)

(c:/texlive/2021/texmf-dist/tex/latex/graphics-def/dvipdfmx.def)))

(c:/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-dvipdfmx.def

(|extractbb --version)) (./test.aux) [1] (./test.aux) )

Output written on test.dvi (1 page, 372 bytes).

SyncTeX written on test.synctex.gz.

Transcript written on test.log.

(guessed encoding: BINARY = jis)test.dvi -> test.pdf

[1

dvipdfmx:warning: Filtering file via command -->rungs -dALLOWPSTRANSPARENCY -dSAFER -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dAutoRotatePages=/None -sOutputFile='C:/Users/tamai/AppData/Local/Temp/dvipdfm-x.c1b405d6b9591c4c1949491da4636031' './civileng.eps' -c quit<-- failed.

dvipdfmx:warning: Image format conversion for "./civileng.eps" failed...

dvipdfmx:fatal: Image inclusion failed for "civileng.eps".


No output PDF file written.

ptex2pdf processing of test.tex failed.






Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- 和田 勇 の投稿
改めて  dvipdfmx:fatal: Image inclusion failed for を追いかけて見ました。

◆パスとかは大丈夫とのことですが、念の為確認です。

念の為、環境変数 PATH を見せて下さい。
コマンドプロンプトであれば echo %path:;=&echo.%
PowerSgell であれば    $env:path -split ';'

また rungs のバージョンは?

私のところでは以下のところに置かれていて、バージョンは 9.54.0 です。

> where rungs
C:\texlive\2021\bin\win32\rungs.exe

> rungs -v
GPL Ghostscript 9.54.0 (2021-03-30)
Copyright (C) 2021 Artifex Software, Inc. All rights reserved.

◆EPS 内に日本語があるので、FONTMAP とかを確認したいので

> ptex2pdf -l -od -vv test.tex

として見て下さい。私のところでは、以下を読み込むようになっています。
表示の関係で一部調整してあります。


 <FONTMAP:c:/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdftex.map>
 <FONTMAP:c:/texlive/2021/texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map>
 <FONTMAP:c:/texlive/2021/texmf-dist/fonts/map/dvipdfmx/ckx.map>


◆そのほか
リブートとかして見てはという、私の今朝の投稿は無視して下さい。
和田 勇 への返信

Re: .epsファイルの変換の失敗

- 和田 勇 の投稿
TeXworks とコマンドプロンプト等のコンソールで結果が違うという報告があったのを思い出しました。

可能性の話ですが、TeXworks の設定で「TeXおよびジャンレンプログラムのパス」とコマンドプロンプトでの PATH の内容・順番等が異なるかもしれません。

ですので次の三つの情報をここにアップして下さい。

1) コマンドプロンプトで echo %PATH% の結果
2) TeXworks の関連プログラムパスが入っている設定ファイル

   %USERPROFILE%\.texlive2021\texmf-config\texworks\TUG\TeXworks.ini

3) タイプセットの設定内容が記録されているファイル

   %USERPROFILE%\.texlive2021\texmf-config\texworks\configuration\tools.ini
和田 勇 への返信

Re: .epsファイルの変換の失敗

- Tetsuo Tamai の投稿
ご対応,ありがとうございます.3件を試してみた結果を,テキストファイルとして添付します.よろしくお願いします」
Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- Akira Kakuto の投稿
civileng.eps を調べると
%!PS-Adobe-3.1 EPSF-3.0
の前に 0 バイト を含むバイナリデータがくっついて
いるので、 TeXWorks を通す場合、うまくゆかない
のかもしれません。
Akira Kakuto への返信

Re: .epsファイルの変換の失敗

- 和田 勇 の投稿
私は 仮想環境ですが Windows 10 Home で Non-Ascii ユーザの環境で TeXworks の ptex2pdf でタイプセットできています。

気になるのは、提供していただいたテキストで echo %PATH% でエラーが表示されていること。

   C:¥Users¥tamai>echo %path:;=&echo.%
   'C:¥Program' は、内部コマンドまたは外部コマンド、
   操作可能なプログラムまたはバッチ ファイルとして認識されていません。
   C:¥ProgramData¥Oracle¥Java¥javapath


内部から実行されるプロセスがこれに影響していないことを祈っていますが。

それから、Tetsuo Tamai さんにお願い。

直接関係しないかもしれませんが、今回のようにうまくうごかない状況だと、懸念されるものを一つ一つ潰していかなければならないので。

1) 環境変数 PATH を以下のコマンドで実行した結果を再度教えて下さい。

  echo %PATH%

2) TeXworks の設定ファイル二つ

   %USERPROFILE%\.texlive2021\texmf-config\texworks\TUG\TeXworks.ini
   %USERPROFILE%\.texlive2021\texmf-config\texworks\configuration\tools.ini

3) FONTMAP で表示された以下の三つのファイル

   c:/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdftex.map
   c:/texlive/2021/texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map
   c:/texlive/2021/texmf-dist/fonts/map/dvipdfmx/ckx.map
和田 勇 への返信

Re: .epsファイルの変換の失敗

- 和田 勇 の投稿
ついでですので、問題を先送りしそうですが、別解も一つの手段としての追加のお願い。

- 2021年 05月 02日(日曜日) 12:54 - はやて さんの 投稿で提案のあった eps を事前に pdf に変換しておく

- ISO イメージが手元にあれば、30 分から二時間くらいで再インストール可能だと思うので、TeXLive2021 を一旦 uninstall して改めて再インストール。
Tetsuo Tamai への返信

Re: .epsファイルの変換の失敗

- はやて (h20y6m) の投稿

こちらのスレッドのように eps を pdf に変換してから \includegraphics で pdf を挿入するというでもありますが……


コマンドプロンプトから

rungs -dALLOWPSTRANSPARENCY -dSAFER -dNOPAUSE -dBATCH -dEPSCrop -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel="1.5" -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -dAutoRotatePages=/None -sOutputFile="civileng.pdf" "civileng.eps" -c quit

を実行するとどのような結果が得られるでしょうか?