MPOST(1)
MPOST(1) π General Commands Manual π
β¨ NAME β¨
mpost,pmpost,upmpostβ MetaPost, a system for creating graphics.r-mpost,r-pmpost,r-upmpostβ restricted MetaPost.
πΈ SYNOPSIS πΈ
mpost [options] [commands]
mpost --dvitomp dvifile[.dvi] [mpxfile[.mpx]]
π DESCRIPTION π
Okay bestie, so MetaPost interprets the MetaPost language and produces PostScript (EPS) or Scalable Vector Graphics (SVG) pictures. The MetaPost language is similar to Knuth's Metafont, but with extra features for including tex(1) or troff(1) commands and accessing features of PostScript not found in Metafont. It's giving graphics language with range.
MetaPost is normally used with a set of basic macros, and it will use its executable name as the name of the preload file to use. For example, when called as mpost, the mpost.mp file is used, which simply reads plain.mp. Cute, right? But when the --ini option is given, preloading does not happen. Periodt.
The commands given on the command line to the MetaPost program are passed to it as the first input line. (But it is often easier to type extended arguments as the first input line, since UNIX shells tend to gobble up or misinterpret MetaPost's favorite symbols, like semicolons, unless you quote them.) The normal usage is to say mpost figs to process the file figs.mp. The basename of figs becomes the βjobnameβ, and is used in forming output file names. If no file is named, the jobname becomes mpout. The default extension, .mp, can be overridden by specifying an extension explicitly. iykyk, quote your semicolons.
When the --dvitomp option is given, MetaPost acts as DVI-to-MPX converter only. See dvitomp (1) for details.
The pmpost program is a variant with Japanese support, and upmpost has Unicode-enabled Japanese support, analogous to ptex and uptex. Slay, multilingual icon behavior.
All three variants are also installed with an r- prefix, that is, r-mpost, r-pmpost, r-upmpost, which implicitly specify the --restricted option to make MetaPost safe to run on unknown input; the tex, makempx, and editor commands are disabled. Safety era.
This manual page is a mere skeleton. For a list of all command line options, run --help.
The main documentation for this version of MetaPost can be found in the User Manual that should have been installed along with the program and is also available from https://tug.org/metapost. Go read the User Manual, bestie, it's the main character.
The MetaPost language is similar to Metafont, but the manual assumes no knowledge of Metafont. MetaPost does not have bitmap output commands or Metafont's online display mechanism. No bitmap output, no online display β don't come looking, it's not there.
π FILES π
plain.mpβ The standard preload file.mfplain.mpβ The Metafont-compatible preload file.$TEXMFMAIN/metapost/base/*.mpβ The standard MetaPost macros included in the original distribution.$TEXMFMAIN/metapost/support/*β Various tables for handling includedtexandtroff.$TEXMFMAIN/metapost/support/trfonts.mapβ Table of corresponding font names fortroffand PostScript.psfonts.mapβ Table of corresponding font names fortexand PostScript.$TEXMFMAIN/doc/metapost/*β The MetaPost manual and tutorial source, also including sample figures
π¦ SUGGESTED READING π¦
- Donald E. Knuth, The Metafontbook (Volume C of Computers & Typesetting).
- TUGboat (the journal of the TeX Users Group).
π SEE ALSO π
dvitomp(1)epstopdf(1)mf(1)mptopdf(1)tex(1)- MetaPost home page
β¨https://tug.org/metapost/β©
π AUTHORS π
MetaPost was created by John D. Hobby, incorporating algorithms from the Metafont program by Donald E. Knuth. Legends only.
Ulrik Vieth adapted MetaPost to take advantage of the advanced path searching features in more recent versions of Web2C and worked towards fully integrating MetaPost into the canonical Unix TeX distribution.
The primary author of the current MetaPost was Taco Hoekwater, with assistance from Hans Hagen and many others. It is currently maintained by Luigi Scarso. Shoutout to the whole MetaPost crew, no cap.
π BUGS π
The MetaPost home page is https://tug.org/metapost. That's literally the whole bugs section, bestie β go touch the home page.
π Web2C 2026 Β· 31 December 2018 Β· MPOST(1) β that's the sign-off, bestie, mwah π
π¦ where this page comes from
- alpine 3.24: texmf-dist-metapost-doc 2026.0-r0 Β· LPPL-1.0 AND LPPL-1.1 AND LPPL-1.2 AND LPPL-1.3a AND LPPL-1.3c AND GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms