O MetaPost normalmente espera que sua saída seja incluída em algum contexto em que as fontes MetaFont ‘padrão’ (que você especificou) já estejam definidas — por exemplo, como uma figura em documento TeX. Se você estiver depurando seu código MetaPost, você pode querer vê-lo em um visualizador baseado em ghostscript (ou algum outro PostScript), mas observe que os visualizadores (mesmo o ghostscript) normalmente não estarão com as fontes carregadas, e você vai experimentar um erro como
Há provisão no MetaPost para evitar este problema: dê o comando prologues := 2; no início do arquivError: /undefined in cmmi10
mp
.
Infelizmente, o PostScript que o MetaPost insere em sua saída, seguindo este comando, é incompatível com o uso normal do PostScript em inclusões em documentos (La)TeX; então, é melhor tornar o comando prologues opcional. Além disso, o MetaPost adota uma abordagem muito simplória para codificação de fonte: uma vez que as codificações de fontes do TeX são tudo, menos simples, a codificação de texto em diagramas é outra fonte de problemas. Se você estiver sofrendo tais problemas (o sintoma é que os caracteres desaparecem ou são incorretamente apresentados), a solução é visualizar a saída ‘original’ do MetaPost depois do processamento através do LaTeX e do dvips.
Compilação condicional pode ser feita, tanto inserindo MyFigure.mp indiretamente, a partir de um invólucro simples MyFigureDisplay.mp:
quanto dando um comando de shell, tal comoprologues := 2; input MyFigure
(que funcionará sem as aspas se você não estiver usando uma shell Unix).mp '\prologues:=2; input MyFigure'
Uma rota LaTeX adequada envolveria o processamento de MyFigure.tex, que contém:
Processar o arquivo DVI resultante com o comando dvips x\documentclass{article} \usepackage{graphicx} \begin{document} \thispagestyle{empty} \includegraphics{MyFigure.1} \end{document}
forneceria, então, um arquivo PostScript Encapsulado satisfatório. Este procedimento pode ser automatizado usando o script Perl mps2eps, economizando, assim, uma boa quantidade de tédio.dvips -E -o MyFigure.eps MyFigure
O usuário de Plain TeX pode usar uma adaptação, feita por Dan Luecking, de um momento da versão de Knuth. A versão mpsproof.tex de Dan funcionará no TeX produzindo um arquivo DVI para uso com dvips, ou no PDFTeX produzindo um arquivo PDF, direto. A saída é configurada para parecer uma prova de impressão.
Uma aplicação de script, a mptopdf, está disponível em distribuições recentes do (La)TeX: ela parece produzir PDF a partir de MetaPost de forma bastante confiável, podendo, portanto, ser razoavelmente considerada uma resposta à pergunta…
This answer last edited: 2013-04-23
This question on the Web: http://latex.net.br/faq/FAQ-mpprologues.html
Do you have any question? Ask on: latex.net.br - we love qood questions!