wolffd@0: --- vladimir@worklogic.com: this below isn't implemented yet! --- wolffd@0: --- Talk to me if you're interested in it and want to help --- wolffd@0: Latex/Psfrag Attributes+ wolffd@0: Only work in -Tps and if latex2e and psfrag.sty ver.3 are installed. wolffd@0: The resulting ps file will print latex commands unless you include it in a wolffd@0: tex file that does \usepackage[scanall]{psfrag}, or run it through the wolffd@0: supplied script "psfrag" (which wraps it in such a tex file). wolffd@0: wolffd@0: psfrag: string [GNE]. This text is passed through latex. wolffd@0: Example: node: a1 [psfrag="$\alpha_1$"] wolffd@0: edge: x->y [label="x -> y" psfrag="$x \rightarrow y$"] wolffd@0: The name/label is used only as a guide for positioning, but you better wolffd@0: specify them. E.g. if the edge had no label attribute, dot would have to wolffd@0: assume that the label is 17 characters wide. wolffd@0: The line breaks \l,\n,\r are *not* processed in the psfrag attribute. wolffd@0: If you want line breaks, arrange it with latex commands, and *also* specify wolffd@0: a label that emulates the breaks. wolffd@0: tailpsfrag/headpsfrag: string [E]. Same for tail/head of the edge. wolffd@0: fontname: [GNE] Use any of the commands described in latex2e's fntguide. wolffd@0: If the command sequence contains %s, the text is inserted there. Else the wolffd@0: text is preceded by the command, all surrounded by braces. For example, if wolffd@0: the text is "..." then \texttt{%s} becomes \texttt{...}, and \ttfamily wolffd@0: becomes {\ttfamily ...}. wolffd@0: If fontname matches "tt" then dot will use fixed font width for its wolffd@0: positioning (is 0.65 right??). If fontname matches "bf" then dot will wolffd@0: multiply the width for positioning purposes by ?? (for all families??). wolffd@0: You cannot change the font by simply giving a different font name. wolffd@0: E.g. to switch to Courier, you either have to use \texttt{%s} with a style wolffd@0: that uses Postscript fonts, or else use \fontfamily{pcr}\selectfont ("pcr" wolffd@0: stands for postscript courier). As a precaution, dot won't output a fontname wolffd@0: that does not contain \. wolffd@0: Often used commands are \rmfamily (roman), \sffamily (sans serif), wolffd@0: \ttfamily (typewriter), \mdseries (medium, i.e. normal), \bfseries (bold), wolffd@0: \upshape (upright, i.e. normal), \itshape (italic), \slshape (slanted), wolffd@0: \scshape (small caps); or their equivalents \textrm{%s}, ...; \boldmath; wolffd@0: \mathcal{%s}. wolffd@0: fontsize: "n\cmd". [GNE] Dot assumes for positioning purposes that the font is wolffd@0: n points high, and emits the font changing command \cmd to latex. Both n and wolffd@0: \cmd are optional. wolffd@0: If \cmd is missing then you are informing dot that the latex fontsize is n. wolffd@0: *Please* do this at the top level. The default 14 is probably wrong for you. wolffd@0: The correct setting for a 10pt article style is "digraph G {fontsize=10 ...}" wolffd@0: If you use "n!", dot will force this size to latex by emitting commands wolffd@0: \fontsize\selectfont. This is not smart unless you use scalable fonts, eg wolffd@0: postscript fonts. wolffd@0: If n is missing and \cmd is one of the standard commands \tiny, wolffd@0: \scriptsize, \footnotesize, \normalsize, \large, \Large, \LARGE, \huge or wolffd@0: \HUGE, dot will compute the new size automatically. Otherwise you have to wolffd@0: specify both. wolffd@0: If the command contains %s, the text will be inserted there, else the wolffd@0: text is preceded by the command, all surrounded by braces.