2010-02-04 20 views
2

J'ai beaucoup de grandes matrices xypiques dans mon fichier LaTeX pour un de mes papiers, et cela prend un temps long/infini à compiler. Existe-t-il un moyen de convertir uniquement les fichiers xypic séparés en fichiers eps, que j'inclus dans mon document principal?Convertir la matrice xypique en eps. (LaTeX)

Je suppose que j'utilise LaTeX pour compiler la partie xypic, mais ensuite j'obtiendrai un document entier, non?

(Quelqu'un peut-il ajouter la balise xypic à cette question?)

Mise à jour: La solution que je suis venu avec était d'avoir des documents LaTeX distincts pour chaque xymatrix, puis utiliser dvips -e pour capturer la figure. J'ai créé un script pour Compiler + Créer des eps dans Kile, l'éditeur que j'utilise.

Répondre

1

Utilisez latex pour compiler, puis un

dvips -E -o temp.eps temp.dvi 

pour faire un bpa hors de lui, puis epscrop de faire une petite EPS vous pouvez inclure plus tard.

0

Il existe plusieurs façons d'exécuter Latex sur une partie seulement d'un document; la plus utilisée est probablement la région de commande TeX d'Emacs/Auctex (C-c C-r), qui génère un fichier Latex temporaire dont la sortie dvi/eps/pdf/any est juste celle de la région sélectionnée.

0

Vous pouvez utiliser le package preview pour traiter uniquement vos photos. Par exemple:

$ cat a.tex 
\documentclass{article} 
\usepackage[active,tightpage]{preview} 
\setlength\PreviewBorder{5pt} 
\usepackage [arrow]{xy} 
\begin{document} 
\begin{preview} 
\begin{xy} 
    (0,-20)="a", (0,0)="b" 
    \[email protected]{<.||} @<24mm> "a";"b" 
    \[email protected]^{<.||} @<16mm> "a";"b" 
    \[email protected]_{<.||} @<8mm> "a";"b" 
    \[email protected]{<.||}   "a";"b" 
    \[email protected]{<.||} @<-8mm> "a";"b" 
    \[email protected]{<.||} @<-16mm> "a";"b" 
    \[email protected]{<.||} @<-24mm> "a";"b" 
\end{xy} 
\end{preview} 
\end{document} 

Ensuite, lorsque vous exécutez pdflatex, preview va générer un pdf avec seulement les images en elle. Vous pouvez les convertir au format EPS par Ghostscript:

$ latex a 
$ dvips -E -i -Pwww -o figure.000 a 

ou vous pouvez générer des images PNG:

$ pdflatex a 
$ gs -dNOPAUSE -r400 -dGraphicsAlphaBits=4 -dTextAlphaBits=4 \ 
    -sDEVICE=png16m -sOutputFile=figure.png -dBATCH a.pdf 

Ensuite, vous pouvez inclure les fichiers générés dans votre document.