MetaPost — мова програмування, схожа на мову програмування системи METAFONT, та єдина відома система, яка реалізує цю мову програмування. Призначенням мови та системи є створення технічних ілюстрацій для включення в документи. Основною відмінністю від METAFONT є те, що MetaPost видає файли у форматі Encapsulated PostScript, а не растрові зображення.

MetaPost
Парадигма імперативне програмування і декларативне програмування
Дата появи 1994
Система типізації качина типізація, динамічна типізація[d] і строга типізація
Під впливом від Metafont
Мова реалізації C
Ліцензія GNU Lesser General Public License

Призначення та застосування ред.

MetaPost є потужною мовою програмування для підготовки ілюстрацій для документів конвертованих в формат PostScript, або для безпосереднього включення в LaTeX документи. Також, в системі є засоби для включення текстів програм TeX, або математичних виразів у форматі TeX в зображення.

Ще однією можливістю, запозиченою у METAFONT є наявність засобів розв'язання явно (символічно) заданих лінійних рівнянь, що створює умови для написання програм у декларативному стилі.

Хоча, як правило pdfTeX[en] не здатен обробляти графічні файли у форматі PostScript, MetaPost створює настільки прості файли що pdfTeX може обробляти їх без зайвих проблем (використовуючи код, запозичений у ConTeXt[en]).

Як стверджують самі розробники системи, найкраща галузь застосування MetaPost — підготовка різноманітних технічних та наукових ілюстрацій, зображень, які мають відповідати певним математичним рівнянням або правилам. Наприклад, зображення трикутника із наперед заданими кутами, або відображення стану машини Тюрінга.

Приклад роботи ред.

Після обробки наведеного нижче тексту програми, MetaPost створить EPS файл, назва якого складатиметься із назви вихідного файлу, плюс аргумент макроса beginfig.

 
Отримане зображення після інтерпретації програми та растеризації.
beginfig(1);
  path p;
  p = (-1 cm,0)..(0,-1 cm)..(1 cm,0); 
  fill p{up}..(0,0){-1,-2}..{up}cycle;
  draw p..(0,1 cm)..cycle;
endfig;
end

Джерела інформації ред.

Посилання ред.