私は 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
を使用して検索を実装しない限り、イメージ ファイルを見つけることができません。TEXINPUTS
kpsewhich
したがって、次の 3 つの選択肢があります。
の呼び出しに
pdflatex
コマンドライン スイッチを追加します--include-directory="G:\LaTeX\sandbox"
(注意: ここではバックスラッシュを閉じないでください。また、パスに空白がない場合は二重引用符を省略してください)。ただし、TeXMaker 内に含まれているため移植性はありません。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}
私が支持するもの:
すでに指摘したように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