figuras eps com pdflatex
On Fevereiro 14, 2021 by adminEm uma discussão recente neste site, aprendi que usando
\usepackage[pdf]{pstricks}
torna possível executar pdflatex
em arquivos contendo eps
e pstricks
arquivos (e psfrag
uso também). Agora, algumas perguntas:
-
Se um arquivo não contém
pstricks
, apenaseps
epsfrag
, este método ainda pode ser usado. Mas existe um método para fazer isso que não requeira o carregamentopstricks
? Eu sei queauto-pst-pdf
é uma abordagem, outra é carregarepstopdf
, há alguma outra maneira de fazer isso sem carregar esses arquivos? Talvez adicionando uma opção agraphicx
? -
Em todas essas abordagens, sempre que
pdflatex
é executado, todos os arquivoseps
epstricks
são convertidos empdf
arquivos, mesmo se eles não mudaram. Existe uma abordagem que evita isso e só converte parapdf
se um arquivo foi alterado na última compilação?
Obrigado
Comentários
- As duas subquestões estão realmente relacionadas? Caso contrário, pode fazer sentido separá-los.
- Devo acrescentar que epstopdf não pode lidar com psfrag. Tanto auto-pst-pdf quanto \ usepackage [pdf] {pstricks} manipulam psfrag sem problemas.
Resposta
TeX Live 2010 e 2011 convertem arquivos EPS para PDF automaticamente, mas parece que continua convertendo, mesmo quando o arquivo EPS não mudou. Trabalhando com a sugestão de Herbert, isso deve funcionar. Também pode funcionar com outras distribuições, mas eu não tentei.
\documentclass{article} \usepackage{graphicx} \usepackage{epstopdf} \epstopdfsetup{update} % only regenerate pdf files when eps file is newer \begin{document} \includegraphics[width=\textwidth]{sine} % loads sine-eps-converted-to.pdf \end{document}
Comentários
- No meu sistema, ele não continua convertendo se o arquivo eps não for alterado … Talvez diferença em epstopdf.cfg?
- Talvez. Eu pensei que tinha um estoque do TeX Live 2011 instalado no Windows sem modificações explícitas para epstopdf.cfg, mas as coisas podem ser diferentes em outro sistema operacional, ou eu posso simplesmente estar errado sobre a atualização automática ou sobre a natureza do meu epstopdf.cfg.
- aha … no Windows pode ser problemas com carimbos de data / hora … Desculpe, não tenho uma caixa do Windows para verificar
Resposta
-
Em um sistema moderno, um
foo.eps
arquivo em\includegraphics{foo}
, se presente, é automaticamente convertido parafoo.pdf
durante apdflatex
execução. -
Essa conversão é feita apenas uma vez, então
foo.pdf
é deixado para as próximas execuções. Se você mudar o seueps
arquivo, ele será regenerado.
Considere este exemplo:
\documentclass{article} \usepackage{graphicx} \begin{document} \includegraphics{tmp1} \end{document}
Quando o executei, eu tinha o arquivo tmp1.eps
, mas não tmp1.png
ou tmp1.pdf
em meu diretório de trabalho. O registro dizia:
(/usr/local/texlive/2011/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv e )) Package epstopdf Info: Source file: <tmp1.eps> (epstopdf) date: 2011-12-12 13:41:25 (epstopdf) size: 15351 bytes (epstopdf) Output file: <tmp1-eps-converted-to.pdf> (epstopdf) Command: <repstopdf --outfile=tmp1-eps-converted-to.pdf tmp1.eps> (epstopdf) \includegraphics on input line 4. runsystem(repstopdf --outfile=tmp1-eps-converted-to.pdf tmp1.eps)...executed sa fely (allowed). Package epstopdf Info: Result file: <tmp1-eps-converted-to.pdf> (epstopdf) date: 2011-12-16 14:36:28 (epstopdf) size: 7774 bytes. <tmp1-eps-converted-to.pdf, id=1, 346.00266pt x 37.00826pt> File: tmp1-eps-converted-to.pdf Graphic file (type pdf) <use tmp1-eps-converted-to.pdf> Package pdftex.def Info: tmp1-eps-converted-to.pdf used on input line 4. (pdftex.def) Requested size: 346.0018pt x 37.00815pt.
como você pode ver, o arquivo foi convertido. Em seguida, executei pdflatex
novamente:
Package epstopdf Info: Source file: <tmp1.eps> (epstopdf) date: 2011-12-12 13:41:25 (epstopdf) size: 15351 bytes (epstopdf) Output file: <tmp1-eps-converted-to.pdf> (epstopdf) date: 2011-12-16 14:36:28 (epstopdf) size: 7774 bytes (epstopdf) Command: <repstopdf --outfile=tmp1-eps-converted-to.pdf tmp1.eps> (epstopdf) \includegraphics on input line 4. Package epstopdf Info: Output file is already uptodate. <tmp1-eps-converted-to.pdf, id=1, 346.00266pt x 37.00826pt> File: tmp1-eps-converted-to.pdf Graphic file (type pdf)
Como você pode ver, nenhuma conversão foi feita.
Então mudei meu tmp1.eps
e executei `pdflatex novamente. E o registro dizia:
(/usr/local/texlive/2011/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv e )) Package epstopdf Info: Source file: <tmp1.eps> (epstopdf) date: 2011-12-16 14:40:16 (epstopdf) size: 620519 bytes (epstopdf) Output file: <tmp1-eps-converted-to.pdf> (epstopdf) date: 2011-12-16 14:36:28 (epstopdf) size: 7774 bytes (epstopdf) Command: <repstopdf --outfile=tmp1-eps-converted-to.pdf tmp1.eps> (epstopdf) \includegraphics on input line 4. runsystem(repstopdf --outfile=tmp1-eps-converted-to.pdf tmp1.eps)...executed sa fely (allowed). Package epstopdf Info: Result file: <tmp1-eps-converted-to.pdf> (epstopdf) date: 2011-12-16 14:40:21 (epstopdf) size: 19423 bytes. <tmp1-eps-converted-to.pdf, id=1, 241.90375pt x 188.705pt> File: tmp1-eps-converted-to.pdf Graphic file (type pdf) <use tmp1-eps-converted-to.pdf> Package pdftex.def Info: tmp1-eps-converted-to.pdf used on input line 4. (pdftex.def) Requested size: 241.90315pt x 188.70453pt.
Como você pode ver, agora o arquivo foi regenerado!
Comentários
- Esta abordagem não funciona para mim (Miktex 2.9, atualizado regularmente). Recebo a mensagem de erro :! Erro LaTeX: Arquivo `tmp1 ' não encontrado. Consulte o manual do LaTeX ou o LaTeX Companion para obter explicações. Digite H < return > para obter ajuda imediata. … l.4 \ includegraphics {tmp1}?
- Bem, você pode considerar experimentar o TeXLive para Windows … Como @ Mike-renfro diz, ele funciona no Windows TL
- Em relação ao MiKTeX e
epstopdf
, veja também esta minha resposta: Incluindo figuras em PDF em documentos Latex usando TexnicCenter . - Observe que você precisa ter o
texlive-font-utils
instalado, caso contrário, a inclusão de gráficos em eps ainda falhará (com mensagens de erro não informativas). Veja esta resposta . - @oulenz Certamente. Presumi uma instalação completa do TeXLive ou equivalente
Resposta
Sobre sua primeira pergunta: package epstopdf
é uma boa escolha ao usar imagens eps.
Em relação à segunda questão: só existe a possibilidade de criar nenhuma ou todas as imagens.
Comentários
- Receio que você esteja incorreto com a segunda pergunta 🙁 Pensei o mesmo e depois executei os testes. epstopdf é MUITO inteligente 🙂
- Eu estava me referindo para
pst-pdf
com a segunda parte. - Desculpe, não entendi …
- O problema com epstopdf é que ele não consegue lidar com fragmentos psfrag.
- @Per
auto-pst-pdf
pode …
Deixe uma resposta