texmaker 3.5 miktex portable 2.9 和 epstopdf

texmaker 3.5 miktex portable 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 便攜式並進行一些嘗試和錯誤後,我發現真正的答案是...即時調頻:

手冊摘錄epstopdf

筆記:通常轉換程式需要影像檔案的確​​切位置。通常當前目錄有效。此外,如果使用 找到圖像文件\graphicspath,則位置已知。但是,如果圖像位於環境變數目錄中的某個位置TEXINPUTS,則套件不知道確切位置,並且轉換程式將找不到圖像文件,除非它實現搜尋TEXINPUTS(程式kpsewhich可能有助於此任務)。

因此,您可以在以下 3 種可能性中進行選擇:

  1. 呼叫pdflatex新增命令列開關--include-directory="G:\LaTeX\sandbox"(注意!這裡沒有結束反斜杠,或者,如果路徑沒有空格,則省略雙引號),但包含在 TeXMaker 內部,它是不可移植的。

  2. 將命令新增\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}
    
  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/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

相關內容