我正在使用 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 便攜式並進行一些嘗試和錯誤後,我發現真正的答案是...即時調頻:
手冊摘錄epstopdf
:
筆記:通常轉換程式需要影像檔案的確切位置。通常當前目錄有效。此外,如果使用 找到圖像文件
\graphicspath
,則位置已知。但是,如果圖像位於環境變數目錄中的某個位置TEXINPUTS
,則套件不知道確切位置,並且轉換程式將找不到圖像文件,除非它實現搜尋TEXINPUTS
(程式kpsewhich
可能有助於此任務)。
因此,您可以在以下 3 種可能性中進行選擇:
呼叫
pdflatex
新增命令列開關--include-directory="G:\LaTeX\sandbox"
(注意!這裡沒有結束反斜杠,或者,如果路徑沒有空格,則省略雙引號),但包含在 TeXMaker 內部,它是不可移植的。將命令新增
\graphicspath
至您的 TeX 檔案。在測試中,我必須使用斜杠,而不是 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/USBTeXEnglish 並使用他們的想法和您(Speravir,謝謝)的建議。
首先:照常安裝 miktex portable。
第二:建立USB的資料夾結構,例如
- 文件
- 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