epstopdf パッケージは、出力ディレクトリ内に含まれるグラフィックがあると失敗します。

epstopdf パッケージは、出力ディレクトリ内に含まれるグラフィックがあると失敗します。

エラーを再現するには:

  1. 何でも含むファイルを作成しますb.eps。たとえば、次のコマンドは以下を作成しますb.eps:

    asy -noV -o b -c 'draw((0, 0)--(1, 1));'
    
  2. フォルダを作成してそこへ./d/置きます。b.eps

  3. ./a.tex現在のディレクトリに次の内容を作成します:

    \documentclass{article}
    \usepackage{graphicx}
    \begin{document}
    \graphicspath{{d/}}
    \includegraphics{b}
    \end{document}
    
  4. でコンパイルしますpdflatex --shell-escape --recorder --output-directory=d/ a.tex

  5. エラーを参照してください。


.epsこのエラーが発生するのは、グラフィックが出力ディレクトリにある場合、LaTeX が現在のディレクトリを基準としたファイルへのパスを正しく判断できず、 epstopdf--- に渡すことができないため、 に変換できないためだと考えていますpdf

この問題を修正することは可能でしょうか?


回避策として、グラフィックへのパスを明示的に指定することも可能です。

\includegraphics{d/b}

しかし、適切な解決策があるかどうかも知りたいです。

コンテキストとしては、asypictureB任意の で動作するようにいくつかのパッチを適用したパッケージを使用しており--output-directory.asyファイルは当然 で作成されるoutput-directoryため、.epsもそこで生成されるということです。

関連情報