texmaker 3.5 miktex ポータブル 2.9 および epstopdf

texmaker 3.5 miktex ポータブル 2.9 および epstopdf

私は TeXMaker 3.5 (TeXMaker 3.4.1 でも同じ問題が発生) と MikTeX 2.9 を使用しています。ソースは次のとおりです。

\documentclass[10pt,a4paper]{article} 
\usepackage[utf8]{inputenc} 
\usepackage{graphicx} 
\usepackage{epstopdf} 
\begin{document} 
\begin{figure} 
\includegraphics[scale=1]{test.eps} 
\end{figure} 
\end{document} 

しかし、私はいつもこう思います:

Package pdftex.def Error: File `test-eps-converted-to.pdf' not found.

MikTeX は動作しています。画像も存在し、コマンド プロンプトを使用しています:

G:\LaTeX\sandbox>G:/miktex/miktex/bin/epstopdf --outfile=G:\LaTeX\sandbox\test-eps-converted-to.pdf G:\LaTeX\sandbox\test.eps

eps ファイルから pdf を生成します。これが私の設定です:

 Tools\Latex="\"../miktex/miktex/bin/latex.exe\" -enable-write18 
 -interaction=nonstopmode %.tex"  Tools\Dvi=../miktex/miktex/bin/yap.exe -1 -s @.tex %.dvi 
 Tools\Dvips=\"../miktex/miktex/bin/dvips.exe\" -o %.ps %.dvi 
 Tools\Ps=../gsview/GSviewPortable.exe %.ps 
 Tools\Ps2pdf=\"../miktex/miktex/bin/ps2pdf.exe\" %.ps 
 Tools\Makeindex=\"../miktex/miktex/bin/makeindex.exe\" %.idx 
 Tools\Bibtex=\"../miktex/miktex/bin/bibtex.exe\" %.aux 
 Tools\Pdflatex="\"../miktex/miktex/bin/pdflatex.exe\" -enable-write18
 -interaction=nonstopmode %.tex"  Tools\Pdf=../SumatraPDF/SumatraPDF.exe %.pdf -reuse-instance
 -forward-search %.tex @  Tools\Dvipdf=\"../miktex/miktex/bin/dvipdfm.exe\" %.dvi 
 Tools\Metapost="\"../miktex/miktex/bin/mpost.exe\" --interaction
 nonstopmode " 
 Tools\Ghostscript=\"../miktex/ghostscriptx/bin/gswin64c.exe\" 
 Tools\Asymptote=../Asymptote/asy.exe %.asy 
 Tools\Latexmk="\"G:/miktex/miktex/bin/latexmk.exe\" -e
 \"$pdflatex=q/pdflatex -interaction=nonstopmode/\" -pdf %.tex" 
 Tools\Sweave=../R/bin/R.exe CMD Sweave %.Rnw

この問題を解決する方法を知っている人はいますか?私はポータブル版はこちら

よろしくお願いします。、、、... のすべての可能な順列を試し--enable-write18ました--shell-escape-enable-write18

答え1

MiKTeX ポータブルを(再)インストールし、試行錯誤した結果、本当の答えは次のことがわかりました…RTFM:

マニュアルからの抜粋epstopdf:

注記:通常、変換プログラムにはイメージ ファイルの正確な場所が必要です。通常は現在のディレクトリで十分です。また、 を使用してイメージ ファイルが見つかった場合\graphicspath、その場所はわかります。ただし、イメージが環境変数 のディレクトリのどこかにある場合、パッケージは正確な場所を知らず、変換プログラムは(プログラムがこのタスクに役立つ場合があります)TEXINPUTSを使用して検索を実装しない限り、イメージ ファイルを見つけることができません。TEXINPUTSkpsewhich

したがって、次の 3 つの選択肢があります。

  1. の呼び出しにpdflatexコマンドライン スイッチを追加します--include-directory="G:\LaTeX\sandbox"(注意: ここではバックスラッシュを閉じないでください。また、パスに空白がない場合は二重引用符を省略してください)。ただし、TeXMaker 内に含まれているため移植性はありません。

  2. TeX ファイルにコマンドを追加します\graphicspath。テストでは、Windows で通常使用されるバックスラッシュの代わりにスラッシュを使用する必要がありました。これも移植性がありませんが、新しいコンパイルを行う前に簡単に変更できます。

    \documentclass[10pt,a4paper]{article} 
    \usepackage[utf8]{inputenc} 
    \usepackage{graphicx} 
    \graphicspath={{G:/LaTeX/sandbox/}}
    \usepackage{epstopdf} 
    \begin{document} 
    \includegraphics[scale=1]{test.eps} 
    \end{document}
    
  3. 私が支持するもの:
    すでに指摘したようにUSB ドライブから MikTex Portable、TexMaker、Asymptote を使用する– スタートファイルを編集しmiktex-portable.cmd(まず安全なコピーを作成)、システム変数を追加しますTEXINPUTS。注: ここで示されている方法は、ディレクトリTEXINPUTSがポータブル MiKTeX インストールと同じドライブ上にある場合にのみ機能し、私が知る限り、これが唯一のポータブルな方法です。

    @echo off
    
    set MOBIDRIVE=%~d0
    set TEXINPUTS=%MOBIDRIVE%\LaTeX\sandbox        
    set PATH=%TEXINPUTS%;%PATH%
    
    miktex\bin\miktex-taskbar-icon.exe
    

    次に、トレイバーアイコンを右クリックすると表示されるコマンドラインプロンプトを使用できます(使用すべきです)。コマンドラインコンパイルは、ここでのテストでは正常に動作しました。このコマンドプロンプトからTeXMakerを起動するか、次の行を追加します。

    start /i /d%MOBIDRIVE%\<path-to-texmaker> texmaker.exe
    

    前に上記を実行するmiktex\bin\miktex-taskbar-icon.exeか、変数を使用して独自の startbatch ファイルを作成しますTEXINPUTS

述べる:最初にダウンロードする必要があった TeXMaker ポータブル (ちなみに、これは完全に正しいわけではありません!) でテストを行った後、TeXMaker ではポイント 3 のアプローチが機能しなかったことは明らかです。バージョンのみ\graphicspath、または EPS ファイルが TEX ファイルと同じディレクトリにある場合にのみ、結果が得られました。(注 2: Ghostscript のいくつかのサンプル ファイルとサンプル フォルダーをグラフィック パスとして使用しましたが、すべてが同じドライブ上にありました。)

wieschoo の回答が言及しているため、機能しない点についてはここに残しておきます。

答え2

私はusbtexを見つけました http://www.exomatik.net/U-Latex/USBTeX英語 そして彼らのアイデアとあなたの(Speravir、ありがとう)提案を活用します。

まず、通常どおり miktex ポータブルをインストールします。

2番目: USBのフォルダー構造を次のように作成します
- documents
- texsuite
- - MiKTeX_2.9 (miktex 2.9)
- - gs9.02 (ghostscript)
- - texmakerwin32usb (texmaker 3.5)
- - tikzedt (tikzedt 0.2)
- - gnuplot (gnuplot)
- - texmaker.bat
- - tikzedt.bat

texmaker.bat

set path=%~dp0MiKTeX_2.9\miktex\bin;%~dp0gs9.02\lib;%~dp0gs9.02\bin;%~dp0gnuplot\bin;%PATH%
cd %~dp0texmakerwin32usb\
start texmaker

tikzedt.bat(ティクゼット用)

set path=%~dp0MiKTeX_2.9\miktex\bin;%~dp0gs9.02\lib;%~dp0gs9.02\bin;%PATH%
cd %~dp0tikzedt\
start tikzedt.exe -p

関連情報