Estoy usando TeXMaker 3.5 (los mismos problemas en TeXMaker 3.4.1) y MikTeX 2.9. Mi fuente es:
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{epstopdf}
\begin{document}
\begin{figure}
\includegraphics[scale=1]{test.eps}
\end{figure}
\end{document}
Pero siempre recibo:
Package pdftex.def Error: File `test-eps-converted-to.pdf' not found.
¡MikTeX está funcionando! La imagen también existe y usando el símbolo del sistema:
G:\LaTeX\sandbox>G:/miktex/miktex/bin/epstopdf --outfile=G:\LaTeX\sandbox\test-eps-converted-to.pdf G:\LaTeX\sandbox\test.eps
produzca el pdf a partir del archivo eps. Esta es mi configuración:
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
¿Alguien tiene una idea de cómo resolver este problema? he creado miversión portátil aquí.
Gracias de antemano. Probé todas las permutaciones posibles de --enable-write18
, --shell-escape
, -enable-write18
,....
Respuesta1
Después de (re)instalar MiKTeX portátil y algunas pruebas y errores, descubrí que la verdadera respuesta es...RTFM:
Extracto del epstopdf
manual:
Nota:Normalmente el programa de conversión necesita la ubicación exacta del archivo de imagen. Normalmente el directorio actual funciona. Además, si el archivo de imagen se encuentra usando
\graphicspath
, se conoce la ubicación. Sin embargo, si la imagen está en algún lugar de un directorio de variable de entornoTEXINPUTS
, entonces el paquete no conoce la ubicación exacta y el programa de conversión no encontrará el archivo de imagen a menos que implemente una búsqueda usandoTEXINPUTS
(el programakpsewhich
puede ser de ayuda en esta tarea).
Entonces, puedes elegir entre las siguientes 3 posibilidades:
A la llamada de
pdflatex
agregue el modificador de línea de comando--include-directory="G:\LaTeX\sandbox"
(¡Atención! Aquí no hay barra invertida de cierre o, si la ruta no tiene espacios en blanco, omita las comillas dobles), pero incluido dentro de TeXMaker no es portátil.Agregue el comando
\graphicspath
a su archivo TeX. En una prueba tuve que usar barras diagonales en lugar de las barras invertidas que se usan habitualmente en Windows. Tampoco es portátil, pero puedes cambiarlo fácilmente antes de realizar una nueva compilación.\documentclass[10pt,a4paper]{article} \usepackage[utf8]{inputenc} \usepackage{graphicx} \graphicspath={{G:/LaTeX/sandbox/}} \usepackage{epstopdf} \begin{document} \includegraphics[scale=1]{test.eps} \end{document}
Lo que yo favorecería:
similar a lo que ya señalé enUso de MikTex Portable, TexMaker y Asymptote desde una unidad USB– edite el archivo de iniciomiktex-portable.cmd
(primero haga una copia de seguridad) y agregue la variable del sistemaTEXINPUTS
. Nota: La forma en que se muestra aquí solo funciona si elTEXINPUTS
directorio está en la misma unidad que la instalación portátil de MiKTeX y, hasta donde veo, es la única forma portátil.@echo off set MOBIDRIVE=%~d0 set TEXINPUTS=%MOBIDRIVE%\LaTeX\sandbox set PATH=%TEXINPUTS%;%PATH% miktex\bin\miktex-taskbar-icon.exe
Luego puede (¡y debe!) usar la línea de comando, que aparece al hacer clic derecho en el icono de la barra de bandeja. La compilación de la línea de comando funcionó bien aquí en una prueba. Inicie TeXMaker desde este símbolo del sistema o agregue una línea
start /i /d%MOBIDRIVE%\<path-to-texmaker> texmaker.exe
anteslo anteriormiktex\bin\miktex-taskbar-icon.exe
o crear un archivo startbatch propio con la variableTEXINPUTS
.
Observación:Después de haber hecho una prueba con TeXMaker portátil (por cierto: ¡eso no es del todo cierto!), que tuve que descargar primero, debo decir que obviamente con TeXMaker este enfoque del punto 3 no funcionó. Solo con la \graphicspath
versión o, si el archivo EPS estaba en el mismo directorio que el archivo TEX, obtuve un resultado.(Observación 2: utilicé algunos archivos de ejemplo de Ghostscript y la carpeta de ejemplo como ruta de gráficos, todo estaba en la misma unidad).
Dejo aquí el punto de no funcionamiento, porque la respuesta de wieschoo se refiere a él.
Respuesta2
encontré usbtex de http://www.exomatik.net/U-Latex/USBTeXEnglish y utilice su idea y su sugerencia (Speravir, gracias).
Primero: instale miktex portable como de costumbre.
Segundo: crear la estructura de carpetas del usb como
- documentos
- 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
(para Tikzedt)
set path=%~dp0MiKTeX_2.9\miktex\bin;%~dp0gs9.02\lib;%~dp0gs9.02\bin;%PATH%
cd %~dp0tikzedt\
start tikzedt.exe -p