METAFONT

Metafont是一種用於定義矢量字體的編程語言。這也是Metafont直譯器的名稱，其生成的點陣字體，可嵌入到PostScript中。Metafont由高德納發明，與也是他發明的TeX排版軟體相輔相成。
Metafont的特點之一是所有的字体都是用几何方程定义的，例如，可以用線段及貝茲曲線的相交處來定義點。

歷史
美國計算機科學家高德纳（Donald Knuth）於1977年著手字體製作軟件，並於1979年發佈的第一個版本METAFONT。由於原來語言的缺陷，高德纳於1984年開發一個全新的METAFONT系統。METAFONT有一個與的相似點 ，就是每一個更新版本都愈接近一個數學常數（每一個更新版本增加一個小數位，METAFONT趋近于e，趋近于π）。

特点
与很多常见的轮廓字体格式如TrueType和PostScript Type 1不同，METAFONT字体主要由一定宽度的“笔划”和一些封闭填色区域构成。因此，METAFONT字体文件并不描述字形的轮廓，而是描述“笔划”的路径。

METAFONT的曲线描述采用三次样条函数，而不是二次的。

使用
虽然一些著名的字体设计师如Hermann Zapf已经与高德纳合作用METAFONT设计新字体（二者曾合作设计了AMS Euler数学字体），但这个系统并未在业界被广泛使用。高德纳认为这是由于“让一个艺术家变成一个能够理解如何通过60多个参数设计字体的数学家实在太困难”。

例子
下列例子為字母B定義一個類似豆子的字型。
%file name: beta.mf
%mode_setup;
% Define a beanlike shape for the character B
beginchar("B",11pt#,11pt#,0);
  % Setup coordinates as an equation system
  y1=y2=y3=0;
  y4=y5=y6=h;
  x1=x4=0;
  x2=x5=w;
  x3=x6=2*w;

  % Define pen
  pickup pencircle xscaled 0.2w yscaled 0.04w rotated 45;

  % Draw the character curve
  draw z1..z3..z6{z2-z6}..z5..{z4-z2}z4..cycle;
endchar;

end
這會產生下列字型圖樣：

284px

上述例子可由命令列指令來處理
：

mf '\mode=ljfour; mode_setup; input beta.mf'; gftopk beta.600gf beta.600pk

處理後可用於LaTeX檔案（所有檔案應存放在相同目錄下，或是使用適當的方法提示TeX系統相關的資訊）：

\documentclass{article}

\newfont{\letterbeta}{beta}
\newcommand{\otherbeta}{{\letterbeta B}}

\begin{document}
Let’s try having a strange \otherbeta\ here.
\end{document}
最後的PDF檔應如下所示：
187px

参考

 外部連結 
 The Metafont Tutorial: an online guide to using Metafont. 

Category:字体编辑软件