
Estou usando o chemscheme
pacote e para substituir a numeração nesses esquemas que tenho em meu documento, preciso compilar esses arquivos eps com latex, depois dvips e finalmente ps2pdf.
No entanto, tenho um número muito grande de imagens (mais de 100, e só aumentará) que são perfeitamente adequadas para serem usadas como o png em que estão ou como um arquivo pdf pré-compilado. Como preciso de compilação em látex para a chemscheme
numeração, todas as imagens PNG ou PDF precisam estar no formato EPS e isso adiciona 2 a 3 minutos ao tempo de compilação.
Existe alguma solução para este tipo de situação?
Já li algumas soluções aqui sobre pacotes como standalone
e externalize
mas confesso que não entendo bem como aplicar essas soluções ou se elas se aplicam a esta situação.
Pensei em acrescentar que, sem essas imagens extras, meu arquivo latex é compilado em cerca de 30 segundos, com as imagens agora leva quase 4 minutos para compilar :(
Aqui está um exemplo de como o chemscheme
pacote funciona (está incluído como parte do chemstyle
pacote. O arquivo "reaction.eps" pode ser baixado no link a seguir. O arquivo zip também inclui a aparência do png se você pré-compilá-lo apenas em são próprias (essas tags TMP são substituídas durante o processo de conversão). Os comandos de numeração \CNlabel
são \CNlabelsub
espalhados por todo o documento e incrementam contadores relacionados à numeração composta que é usada na substituição das TMP
tags dentro das imagens. algumas das minhas imagens usam essas tags tmp e exigem essa compilação. O restante não está TMP
incluído e pode ser compilado externamente sem problemas. Para obter a numeração correta, latex
deve ser executado duas vezes, antes de chamar dvips
.
arquivos eps e pdf: http://www.filedropper.com/reaction_1
\documentclass{article}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage{bpchem}
\usepackage[tracking=bpchem]{chemstyle}
\begin{document}
I am a document about methanol (\CNlabelsub{alcohol}{Me}), and the related alcohol isoamyl %
alcohol (\CNlabelsub{alcohol}{isoamy}). \CNlabelsub{alcohol}{Me} can be converted to an alkyl %
halide with \BPChem{HCl} to give chloromethane (\CNlabel{MeCl}, \ref{sch:reaction}).
\begin{scheme}
\caption{I am a scheme}\label{sch:reaction}
\schemerefsub{alcohol}{Me}
\schemerefsub{alcohol}{isoamy}
\schemeref{MeCl}
\includegraphics{reaction}
\end{scheme}
\end{document}
Atualização, possível solução, mas ainda não concluída
Pela resposta do Garbage Collector, isso me ocorreu. Posso fornecer uma lista predefinida de todos os compostos do documento com um comando \CNlabelnoref
e \CNlabelsubnoref
. Eu fiz isso e abaixo está um MWE usando o pacote independente. No entanto, agora recebo um erro com uma lista completa de erros começando na \begin{figure}
linha, sendo o primeiro
Erro LaTeX: Algo está errado - talvez um item faltando.
\documentclass[border=0pt]{standalone}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage{bpchem}
\usepackage[journal=rsc,tracking=bpchem]{chemstyle}
\renewcommand*{\schemerefformat}{\small\fontfamily{cmr}}
\newcommand{\chemdrawgraphic}[1]{\includegraphics[scale=1]{#1}}
\setcounter{BPCno}{200}
\CNlabelsubnoref{alcohol}{Me}
\CNlabelsubnoref{alcohol}{isoamy}
\CNlabelnoref{MeCl}
\begin{document}
\begin{figure}
\schemerefsub{alcohol}{Me}
\schemerefsub{alcohol}{isoamy}
\schemeref{MeCl}
\chemdrawgraphic{reaction}
\end{figure}
\end{document}
Responder1
Compile cada um dos diagram.tex
arquivos para latex-dvips-pspdf
obter diagram.pdf
.
% diagram.tex
\documentclass[border=0pt]{standalone}
\usepackage{chemscheme}
\begin{document}
% do your drawing
\end{document}
De dentro do seu arquivo de entrada principal, importe diagram.pdf
e outras imagens PNG, JPG, PDF com extensão \includegraphics
. Compile o arquivo de entrada principal com pdflatex
.
Responder2
Você também pode substituir os suportes de texto temporários ao usar pdfLatex
. Veja por exemplo esta pergunta:Chemnum/PS-Frag com arquivos EPS e arquivos PNG
Pelo que me lembro, chemscheme
e chemnum
faço - em princípio - a mesma coisa quando se trata de numeração de compostos no texto e em esquemas ou figuras, portanto o que foi dito na pergunta citada acima, também deve se aplicar no seu caso.
Eu uso pdfLatex
há algum tempo figuras eps e png e funciona bem, se você não alterar drasticamente o tamanho da fonte.
Aqui está o MWE do link acima, que - no entanto - usa chemnum
:
\documentclass[a4paper]{article}
\usepackage[T1]{fontenc} % Modern font encoding
%\usepackage{pstool}
\usepackage{psfrag}
\usepackage[crop=off]{auto-pst-pdf} % Use EPS graphics with pdfLaTeX
\usepackage{booktabs} % Better table layouts
\usepackage[journal=rsc]{chemstyle} % Of course!
\usepackage{geometry} % Easy page layout
\usepackage{lmodern} % Use Latin Modern fonts
\usepackage[version=3]{mhchem} % Formula subscripts using \ce{}
\usepackage{xkeyval}
\usepackage{pst-pdf}
\usepackage{ifplatform}
\begin{document}
Test Test
\begin{figure} %% eps
\centering
\psfrag{goldhydrid}{test}
\includegraphics[scale=1.0]{./someeps}
\caption{A Caption}
\label{fig:someeps}
\end{figure}
\begin{figure} %% pngfile
\centering
\psfrag{goldhydrid}{test}
\includegraphics[scale=1.0]{./pngfile}
\caption{A Caption}
\label{fig:pngfile}
\end{figure}
\end{document}