Web2C

Web2C是一整套相关程序的集合，也是的一种实现，它包含本身、MetaFont、MetaPost、BIB等，是很多发行套件的内核。Web2C的工作机理是将高德纳用文学编程语言WEB所编写的原始代码转换为C语言，即Web-to-C。Web2C最初适用于Unix系统，目前已扩展到包括DOS、Amiga、Windows、Mac OS X等在内的多种操作系统。

历史
Web2C最早由Tomas Rokicki在1987年实现，他开发了第一套将系统的代码转换为C语言代码的系统。Tim Morgan后来成为了这套系统的维护者，在这期间，软件的名称改为Web-to-C。在许多其他贡献者的帮助下，1990年Karl Berry接手了这项工作。1997年，Karl将这项工作交给了Olaf Weber。Olaf在2006年又把这项工作交还给了Karl。

主要内容
所有的Web2C程序均使用Kpathsea路径搜索库来查找文件，这套库结合环境变量和配置文件的使用来优化大量TeX文件的搜索。

以Web2C方式处理的核心程序包括：
 bibtex：维护参考文献
 dvicopy：展开DVI中的虚拟字体引用
 dvitomp：将DVI转换为MPX（MetaPost图片）
 dvitype：将DVI转换为可读文本
 gftodvi：生成Generic格式字体的proofsheet
 gftopk：将Generic格式字体转换为packed格式字体
 gftype：将Generic格式字体转换为可读文本
 mf：创建字体
 mft：以漂亮的方式排版输出MetaFont的代码
 mpost：创建技术性插图
 patgen：创建断字规则文件
 pktogf：将Packed格式字体转换为generic格式字体
 pktype：将PK格式转换为可读的文本
 pltotf：将纯文本的property list转换为TFM格式
 pooltype：显示WEB的pool文件
 tangle：将WEB转换为Pascal代码
 tex：排版
 tftopl：将TFM格式转换为纯文本的property list格式
 vftovp：将虚拟字体格式转换为virtual property list格式
 vptovf：将virtual property list格式转换为虚拟字体格式
 weave：将WEB转换为

许可协议
由于创作者的情况各异，Web2C的不同部分采用了不同的许可协议。简而言之，Web2C的可执行文件都采用GPL协议；而源自斯坦福的底层源文件则有其特定的许可协议，不适用GPL协议。

参考资料

相关条目
 
 
 BIB
 MetaFont
 MetaPost
  Live

TeX