Texworksを使用してdviをpdfに変換するときのエラーについて

Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
返信数: 20
Texworksを使用してサンプルファイルをコンパイルしたところ以下のようなエラーメッセージが出てdviがpdfに変換されません.(以下がエラーに関係があると思われる部分のログです)

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

[1][2][3][4GPL Ghostscript 9.10: **** Could not open the file /tmp/dvipdfmx.rtL0qK .

**** Unable to open the initial device, quitting.


** WARNING ** Filtering file via command -->rungs -q -dNOPAUSE -dBATCH -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='/tmp/dvipdfmx.rtL0qK' './trapped.eps' -c quit<-- failed.

** WARNING ** Image format conversion for "./trapped.eps" failed...

** ERROR ** pdf_ref_obj(): passed invalid object.


Output file removed.


(以上がログ)

dviは作成されましたが,pdfに変換するところでエラーが出ているようです.

いろいろとウェブで検索をかけて調べてみたのですが,解決しませんでしたので質問させていただきます.何かコメントをいただければ幸いです.よろしくお願いします.


t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- KUROKI Yusuke の投稿
環境変数の TEMP, TMP, TMPDIR あたりに,展開された結果,日本語が入るようことはありませんか?
KUROKI Yusuke への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- Akira Kakuto の投稿
よくわかりませんが,
一時ファイル用ディレクトリ名に,ドライブ名が無いので,
カレントドライブに /tmp なるディレクトリが無いのかも
しれません。
Akira Kakuto への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- KUROKI Yusuke の投稿
環境についてとくに記述がないので,勝手に Windows native の TeXworks かと想像してコメントしていましたが,/tmp というメッセージからすると,UNIX系のOSを疑ったほうがよいのでしょうか.そうなると,答え(られ)る内容が変わってきますね.

KUROKI Yusuke への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
必要な情報を載せておりませんで申し訳ありません.
Windows 7 professionalでTeXworksを使用することを考えております.
環境変数
TMP
TEMP
には展開された後,日本語が入るようなことはありませんでした.
また,TMPDIRは作成しておりませんでした.
いろいろ質問の際に不手際があるかもしれませんが,よろしくお願いします.
t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- Akira Kakuto の投稿
問題解決には至らないかもしれませんが,環境変数
TMP, TEMP は,通常の流儀でドライブ名を付けて
TMP=c:\tmp
TEMP=c:\tmp
としてはどうでしょうか?
Akira Kakuto への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
よく理解しておらず大変申し訳ありませんが,windowsでTeXworksを使用する際に
開きたいファイルを直接クリックして使用するような場合には
カレントドライブは対象となるtexファイルがある場所
という理解で問題ありませんでしょうか.
Akira Kakuto への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
角藤先生のおっしゃるとおり
c:/tmpを作成したところ,動作するようになりましたが
今度は過去ログにあるようなepsデータが出力されるpdfファイルに載らないという以下の問題が生じてしまいました.

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

[1][2][3][4

** WARNING ** Not a PDF file.

** WARNING ** Failed to include image file "/tmp/dvipdfmx.ECNq4s"

** WARNING ** >> Please check if

** WARNING ** >> rungs -q -dNOPAUSE -dBATCH -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit

** WARNING ** >> %o = output filename, %i = input filename, %b = input filename without suffix

** WARNING ** >> can really convert "/tmp/dvipdfmx.ECNq4s" to PDF format image.

** WARNING ** pdf: image inclusion failed for "trapped.eps".

** WARNING ** Failed to read image file: trapped.eps

** WARNING ** Interpreting special command PSfile (ps:) failed.

** WARNING ** >> at page="4" position="(111.693, 497.069)" (in PDF)

** WARNING ** >> xxx "PSfile="trapped.eps" llx=0 lly=0 urx=351 ury=225 rwi=3510 "

** WARNING ** Not a PDF file.

** WARNING ** Failed to include image file "$�#a$�#a"

** WARNING ** >> Please check if

** WARNING ** >> rungs -q -dNOPAUSE -dBATCH -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=%v -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile='%o' '%i' -c quit

** WARNING ** >> %o = output filename, %i = input filename, %b = input filename without suffix

** WARNING ** >> can really convert "$�#a$�#a" to PDF format image.

** WARNING ** pdf: image inclusion failed for "modes.eps".

** WARNING ** Failed to read image file: modes.eps

** WARNING ** Interpreting special command PSfile (ps:) failed.

** WARNING ** >> at page="4" position="(125.693, 303.233)" (in PDF)

** WARNING ** >> xxx "PSfile="modes.eps" llx=0 lly=0 urx=323 ury=142 rwi=3230 "

t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- KUROKI Yusuke の投稿
貼り込もうとしている EPS ファイルのファイル名に日本語は含まれていますか? もしもそうなら,ASCII 範囲に限ると成功するか試してもらえませんか?
KUROKI Yusuke への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
いろいろとアドバイスありがとうございます.
張り込もうとしているepsに日本語は含まれておりません...
よろしくお願いいたします.
t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- Akira Kakuto の投稿
** WARNING ** Not a PDF file.

このメッセージは無いのですが... 次の間違いではないですか?

** WARNING ** Not a PDF 1.[1-x] file.

ではないですか? x はある数字です。
Ghostscript が出力した Version 1.5 が新しすぎると言っている
のかもしれません。(dvipdfmx の設定が 1.4 ならエラーになる)。

dvipdfmx -V 5 dviname

としたらどうなりますか?
Akira Kakuto への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
** WARNING ** Not a PDF file.

というメッセージは間違いではなく確かに出ております.

ちなみに直接
dvipdfmx -V 5 xxx.dvi
としてみましたが問題は解決しませんでした.


少し違う視点で知り合いについてもらって過去ログを見ながら以下のようなことを調べてみました.

ghostscriptで
epsファイルに対して
直接rungsをしてみたところ,新しいオプション
-dEPSCrop 
だと,適切にトリミングをしたような図が出力されるのですが
古いオプション
-sPAPERSIZE=a0 
だと余白がかなり大きい図が出力されてしまいます.

このようなことから,
インストーラが自動的にghostscriptの最新版を落としてくることによって
rungs時のオプションの整合性が取れなくて問題が起こっているというようなことは考えられないでしょうか.また,その場合rungsのオプションはどこで変更すればよいのでしょうか.

いろいろお手数をお掛けいたしますがよろしくお願いします.

t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- KUROKI Yusuke の投稿
とても本質的なことをお願いしますが,エラーが起こるセットを公開していただけないでしょうか? 手元にソース類があれば試しながら試行錯誤できるので.

ちなみに,rungs を呼ぶ書式が書かれているのは
/path/to/texmf-dist/dvipdfmx/dvipdfmx.cfg
のようなところです.
KUROKI Yusuke への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
エラーが起こるセットというのはどのインストーラからインストールしたかをお伝えすればよろしいでしょうか.それともエラーが出ているソース一式をお送りするほうがよろしいでしょうか.

また,dvipdfmx.cfgの位置が特定できましたので私のほうでも少し試してみたいと思います.いろいろ丁寧にありがとうございます.よろしくお願いします.
t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- KUROKI Yusuke の投稿
> それともエラーが出ているソース一式をお送りするほうがよろしいでしょうか.
のほうを意図していました(もちろん,秘密な部分は適宜除去して,公開できる範囲で).
ただ,Kakuto先生などとのやり取りも進んでおられるので,そちらを優先してくださったほうが良いと思います.
t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- Akira Kakuto の投稿
> ** WARNING ** Not a PDF file.
> というメッセージは間違いではなく確かに出ております.

失礼しました。一時ファイル名などから判断して,
古い dvipdfmx ですね。その場合確かにこのメッセージが
あります。このメッセージは PDF ファイルの 1行目が
%PDF-1.4
とか
%PDF-1.6
などのように
%PDF-1. の後に数字が一個あるべし
という約束に背いている場合に出ます。
Ghostscript が作った
/tmp/dvipdfmx.ECNq4s
がうまくできていない可能性があります。
一時ファイルなので,消えてしまっているでしょうが,
rungs -q -dNOPAUSE -dBATCH -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false -dColorImageFilter=/FlateEncode -sOutputFile=test.pdf trapped.eps -c quit

(一行のコマンドです)
として出来るであろう test.pdf を調べてみて
下さい。

なお,-dEPSCrop
を使う場合は,dvipdfmx.def も新しいものを
使用しないと,正しい位置に出力できません。
Akira Kakuto への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
ご返信ありがとうございます.

ご指摘していただいたように張り込もうとしているepsをtest.pdfを出力したところ添付ファイルのように出力されました.よろしくお願いいたします.
t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- Akira Kakuto の投稿
test.pdf は PDF としては,ちゃんとしたもので異常ありません。
ただし,これは古い dvipdfmx が一時ファイルとして
用いるフォーマットなので,この PDF をそのまま
埋め込もうとしてもうまくゆきません。
(画像が見えないほど微小領域に存在するようになると思います。)

dvipdfmx の内部から一時ファイルとして作成するとき,
失敗する理由はわかりませんが,やはり,環境変数
TEMP, TMP は native Windows の流儀でドライブ名
を付けたほうがよいでしょう:
TEMP=c:\tmp
TMP=c:\tmp

失敗の原因がわかるまでは,
epstopdf trapped.eps
としてできる trapped.pdf
を採りこめばよいと思います。
Akira Kakuto への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
epsをpdfにした図を取り込むことでうまく動作しました.
お忙しい中,いろいろと丁寧にアドバイスをいただきまして本当にありがとうございました.

未解決の問題に関しましても何か情報を手に入れることが出来ましたら共有させていただきます.よろしくお願いいたします.

t d への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- 若 雲 の投稿
過去に同じようなエラーメッセージについてのやりとりがありますが、参考にならないでしょうか。

https://okumuralab.org/tex/mod/forum/discuss.php?d=1121

上の議論はCygwin絡みですね。
若 雲 への返信

Re: Texworksを使用してdviをpdfに変換するときのエラーについて

- t d の投稿
ご返信ありがとうございます.

過去ログと角藤先生からの書き込みを参考にして,c:/tmpを作成したところ画像なしのPDFが作成されるようにはなりましたが(cygwinを使っても,guiで直接texファイルをクリックしても作成される)この点に関しましては解決されていないように思います.
いろいろお手数をおかけします.
なお,エラーメッセージは先ほどの投稿に書いてあります.
よろしくお願いします.