\contentsline {section}{\numberline {1}Introduction}{1}{section.1} \contentsline {section}{\numberline {2}Basic Drawing Statements}{2}{section.2} \contentsline {section}{\numberline {3}The MetaPost Workflow}{3}{section.3} \contentsline {section}{\numberline {4}Curves}{5}{section.4} \contentsline {subsection}{\numberline {4.1}B\'ezier Cubic Curves}{6}{subsection.4.1} \contentsline {subsection}{\numberline {4.2}Specifying Direction, Tension, and Curl}{7}{subsection.4.2} \contentsline {subsection}{\numberline {4.3}Summary of Path Syntax}{10}{subsection.4.3} \contentsline {section}{\numberline {5}Linear Equations}{11}{section.5} \contentsline {subsection}{\numberline {5.1}Equations and Coordinate Pairs}{11}{subsection.5.1} \contentsline {subsection}{\numberline {5.2}Dealing with Unknowns}{13}{subsection.5.2} \contentsline {section}{\numberline {6}Expressions}{14}{section.6} \contentsline {subsection}{\numberline {6.1}Data Types}{14}{subsection.6.1} \contentsline {subsection}{\numberline {6.2}Operators}{15}{subsection.6.2} \contentsline {subsection}{\numberline {6.3}Fractions, Mediation, and Unary Operators}{17}{subsection.6.3} \contentsline {section}{\numberline {7}Variables}{18}{section.7} \contentsline {subsection}{\numberline {7.1}Tokens}{18}{subsection.7.1} \contentsline {subsection}{\numberline {7.2}Variable Declarations}{19}{subsection.7.2} \contentsline {section}{\numberline {8}Integrating Text and Graphics}{21}{section.8} \contentsline {subsection}{\numberline {8.1}Typesetting Your Labels}{22}{subsection.8.1} \contentsline {subsection}{\numberline {8.2}Font Map Files}{25}{subsection.8.2} \contentsline {subsection}{\numberline {8.3}The \texttt {infont} Operator}{26}{subsection.8.3} \contentsline {subsection}{\numberline {8.4}Measuring Text}{27}{subsection.8.4} \contentsline {section}{\numberline {9}Advanced Graphics}{28}{section.9} \contentsline {subsection}{\numberline {9.1}Building Cycles}{30}{subsection.9.1} \contentsline {subsection}{\numberline {9.2}Dealing with Paths Parametrically}{32}{subsection.9.2} \contentsline {subsection}{\numberline {9.3}Affine Transformations}{35}{subsection.9.3} \contentsline {subsection}{\numberline {9.4}Dashed Lines}{37}{subsection.9.4} \contentsline {subsection}{\numberline {9.5}Local specials}{40}{subsection.9.5} \contentsline {subsection}{\numberline {9.6}Other Options}{40}{subsection.9.6} \contentsline {subsection}{\numberline {9.7}Pens}{43}{subsection.9.7} \contentsline {subsection}{\numberline {9.8}Clipping and Low-Level Drawing Commands}{44}{subsection.9.8} \contentsline {subsection}{\numberline {9.9}Directing Output to a Picture Variable}{46}{subsection.9.9} \contentsline {subsection}{\numberline {9.10}Inspecting the Components of a Picture}{46}{subsection.9.10} \contentsline {subsection}{\numberline {9.11}Decomposing the Glyphs of a Font}{48}{subsection.9.11} \contentsline {section}{\numberline {10}Macros}{50}{section.10} \contentsline {subsection}{\numberline {10.1}Grouping}{51}{subsection.10.1} \contentsline {subsection}{\numberline {10.2}Parameterized Macros}{52}{subsection.10.2} \contentsline {subsection}{\numberline {10.3}Suffix and Text Parameters}{55}{subsection.10.3} \contentsline {subsection}{\numberline {10.4}Vardef Macros}{58}{subsection.10.4} \contentsline {subsection}{\numberline {10.5}Defining Unary and Binary Macros}{59}{subsection.10.5} \contentsline {section}{\numberline {11}Loops}{61}{section.11} \contentsline {section}{\numberline {12}Reading and Writing Files}{62}{section.12} \contentsline {section}{\numberline {13}Utility Routines}{63}{section.13} \contentsline {subsection}{\numberline {13.1}\texttt {TEX.mp}}{63}{subsection.13.1} \contentsline {section}{\numberline {14}Another Look at the MetaPost Workflow}{65}{section.14} \contentsline {subsection}{\numberline {14.1}Customizing Run-Time Behavior}{65}{subsection.14.1} \contentsline {paragraph}{Date and Time}{65}{section*.1} \contentsline {paragraph}{Output File Names}{65}{section*.2} \contentsline {paragraph}{Output Format}{66}{section*.3} \contentsline {paragraph}{PostScript Dictionary}{66}{section*.4} \contentsline {paragraph}{Version Number}{66}{section*.5} \contentsline {subsection}{\numberline {14.2}Previewing PostScript Output}{67}{subsection.14.2} \contentsline {subsubsection}{\numberline {14.2.1}Bounding Box}{67}{subsubsection.14.2.1} \contentsline {subsubsection}{\numberline {14.2.2}Text Labels}{68}{subsubsection.14.2.2} \contentsline {subsubsection}{\numberline {14.2.3}Proof Sheets}{68}{subsubsection.14.2.3} \contentsline {paragraph}{\texttt {mproof.tex}}{68}{section*.6} \contentsline {paragraph}{\texttt {mpsproof.tex}}{69}{section*.7} \contentsline {paragraph}{Alternatives}{69}{section*.8} \contentsline {subsection}{\numberline {14.3}Debugging}{69}{subsection.14.3} \contentsline {subsection}{\numberline {14.4}Importing MetaPost Graphics into External Applications}{71}{subsection.14.4} \contentsline {subsubsection}{\numberline {14.4.1}T\kern -.1667em\lower .5ex\hbox {E}\kern -.125emX\spacefactor \@m \ and Friends}{72}{subsubsection.14.4.1} \contentsline {paragraph}{Plain T\kern -.1667em\lower .5ex\hbox {E}\kern -.125emX\spacefactor \@m \ Format}{72}{section*.9} \contentsline {paragraph}{\LaTeX \ Format}{73}{section*.10} \contentsline {paragraph}{ConT\kern -.1667em\lower .5ex\hbox {E}\kern -.125emX\spacefactor \@m t Format}{74}{section*.11} \contentsline {subsubsection}{\numberline {14.4.2}Troff}{74}{subsubsection.14.4.2} \contentsline {subsubsection}{\numberline {14.4.3}Web Applications}{74}{subsubsection.14.4.3} \contentsline {section}{\numberline {A}Reference Manual}{75}{appendix.A} \contentsline {subsection}{\numberline {A.1}The MetaPost Language}{75}{subsection.A.1} \contentsline {subsection}{\numberline {A.2}Command-Line Syntax}{94}{subsection.A.2} \contentsline {subsubsection}{\numberline {A.2.1}The MetaPost Program}{94}{subsubsection.A.2.1} \contentsline {subsubsection}{\numberline {A.2.2}The dvitomp Program}{95}{subsubsection.A.2.2} \contentsline {section}{\numberline {B}Legacy Information}{97}{appendix.B} \contentsline {subsection}{\numberline {B.1}MetaPost Versus \textlogo {META}\discretionary {-}{}{}\textlogo {FONT}\spacefactor \@m }{97}{subsection.B.1} \contentsline {subsection}{\numberline {B.2}File Name Templates}{100}{subsection.B.2}