总结:我先问一下我的问题:
- AMS Euler 是如何从 Hermann Zapf 的手绘图形转化到 METAFONT 中的?有没有转化到 METAFONT 的笔画方法中?
- 除了当然之外,还有哪些现有设计被翻译成 METAFONT 的例子?Monotype Modern 8A 的 Computer Modern)?
背景:今天,在跨越数十年的文章中,我两次遇到这样的想法:METAFONT 更擅长探索性地创建新的字体,而不是创建已经确切知道自己想要什么的字体。
戴夫·克罗斯兰为什么 METAFONT 没有流行起来? (TUGboat,第 29 卷(2008 年),第 3 期)(另见视频和成绩单) 比较了在软件中实现字体的两种方法:“[笔]笔画”方法(METAFONT 使用)和“轮廓”方法(大多数其他软件使用,例如 Fontographer/FontLab/FontForge)。他这样评价 METAFONT:
虽然不适合实现现有的字体设计,但 METAFONT 的抽象和逻辑性质 […] 非常适合开发新字体设计,设计师不确定他们试图捕捉的精确外观,并想尝试对其设计进行各种彻底的改变。
相比之下,“大纲”方法:
如今,轮廓方法占据主导地位,因为它能提供即时的视觉反馈和精确的控制;它直观而直观。这意味着在单个字母形状的层面上设计字体是直观的,字体很快就能出现。它特别适合实现现有的字体设计,因为所有方面都已经考虑周全;TEX 社区在 AMS Euler 项目 [4] 中提供了一个清晰的例子,斯坦福大学的一个学生团队试图将 Zapf 在纸上绘制的数学新字体设计数字化;开发人员尝试了这两种方法,并认为描摹轮廓是最合适的。
(参考文献 [4] 是 Knuth 和 Zapf 的AMS Euler:数学新字体,1989 年,我无法访问。)
尽管有一些支持证据,但我找不到确切的证据来证实这一点。texdoc 文档说:
在 Donald Knuth 的协助和鼓励下,本世纪最杰出的字体设计师之一 Hermann Zapf 被委托进行设计 […]。斯坦福大学的研究生在 Knuth 的指导下,用 METAFONT 代码呈现了 Zapf 的设计;David Siegel 在一份报告中描述了 METAFONT 字体的实现过程 [DRS85]。
([DRS85] 是斯坦福大学欧拉项目,我也没有权限访问。可能是西格尔的硕士论文,维基百科。
字形绘制在约 6 厘米高的纸上,然后使用光栅在纸上精确定位,将这些图形数字化。将得到的点转换为 METAFONT,然后添加一些额外的数学形状。
最接近的可能是 Daniel Rhatigan 的 2007 年硕士论文三种数学字体基于 Knuth–Zapf 和 Siegel 的观点,该文指出:
尽管 Knuth 和 Zapf 都对整体概念做出了贡献,但 Zapf 是主要设计师,他为 Knuth 和 AMS 委员会提供了提案草图。Knuth 提供反馈,还收集和筛选 AMS 委员会的反馈,之后 Zapf 将制作详细的主图。[…]
经委员会批准后,Zapf 的绘图将被数字化,并使用 METAFONT 构建为与 TEX 兼容的字体。Knuth 和一支由斯坦福大学学生组成的团队(包括 David Fuchs、John Hobby、Scott Kim、Dan Mills、Lynn Ruggles、David Siegel 和 Carol Twombly)在接下来的几年里试图将 Euler 的绘图开发成可用的字体。Euler 团队在处理字体时实际上重写了 METAFONT 软件本身以及支持制作过程的许多软件工具,突破了软件甚至他们所掌握的计算机设备的局限性,以扩展电子媒体的可能性。
Zapf 的设计违背了 METAFONT 的一些基本原则。他的字体基于书法,但形式比 Knuth 想象中的可预测笔触组合应用于基本骨架形状更为微妙。要复制他的画作,团队需要绘制每个字形的内轮廓和外轮廓,而不是从中心手势向外构建。一旦他们将字形的本质作为单个程序捕捉到,他们就必须定义参数,以便在将轮廓生成为位图字体时保持每个字体中字形的一致粗细,这是另一个挑战,与早期的 METAFONT 项目相比,它揭示了 Euler 的微妙之处。[…]
正如 Knuth 自己指出的那样,Euler 的最终版本实际上并不是一个元字体。相反,它是一个使用 METAFONT 工具构建的轮廓数字化。由于制作 Euler 的困难导致了 METAFONT 版本更加复杂,他表示希望其他人能够使用它来解决这个问题。
Dave Crossland 还提到此论坛帖子:
AMS Euler 字体由 Zapf 在纸上设计,并由斯坦福大学的学生在 Knuth 的监督下进行数字化,但他们很快就放弃了按照 Knuth 的意图使用 METAFONT,而是以类似 Ikarus 的方式使用它来绘制 Zapf 勾勒出的轮廓。所以它实际上不算数
因此,总体而言,AMS Euler 的计算机实现似乎使用了 METAFONT 技术,但没有使用 METAFONT 的笔和橡皮擦方法。有没有关于这种“失败”的更多文字或说明?
关于我所知道的一个“成功”的例子:据我所知,Knuth 的目标是创建一种字体,使 TAOCP 第 2 卷(半数值算法)的第二版看起来像第一版(使用 Monotype 机器上的热金属技术排版)。他使用第一版的印刷版作为参考(使用 Monotype Modern 8A 排版)。他从 1977 年开始,例如,他提到过如何这些信让他许多个不眠之夜试图翻译成METAFONT。尽管如此,他认为自己1981 年完成,但对结果感到失望:
我原本以为那会是打开这本书并庆祝的最佳时机。我终于完成了这个项目。然而,那是我一生中最糟糕的日子之一。我打开了这本书,我一点也不喜欢它 [...] 它看起来完全不一样了 [...] 我说,‘天哪,我离完成这件事并得到一些,你知道,一些...... 一些像样的东西还差得很远。[...] 我很沮丧...... 因为我知道还有很多事情要做。[...] 但我的字体设计师朋友...... 设计师说,‘听着,唐,字体设计师的学徒期总是五年,你只做了两年,你怎么能指望两年后就成功呢?’所以,他们对我很好...... 通过我们现在获得的资助,我可以邀请他们来斯坦福,与他们共度时光,向他们学习我应该做的事情。
他1986 年曾说过在所有,
七年之后我才能够创作出我喜欢的字体。
Dominik Wujastyk 在TeX 的多面性:数字 METAfonts 调查(TUGboat,第 9 卷(1988),第 2 期)(一篇以“本文旨在对当前可用于 TeX 的字体和 METAfonts 进行合理完整的调查”开头的文章)提到了霍夫施塔特的挑战:
有人应该接受霍夫施塔特发出的挑战,并尝试从 CM 程序中找出一位泰晤士报罗马人、巴斯克维尔或其他熟悉的面孔。
那是在 1988 年。那么有没有例子表明有人在 METAFONT 中(重新)制作了现有的字体,不一定是通过调整 Computer Modern 的 62 个参数,而是更普遍地使用 METAFONT 的带参数的笔和橡皮擦程序方法?
答案1
一个字体被翻译成 Metafont 的例子,而不是最初在 Metafont 中设计,是 Nara 的早期版本,当时称为 Adriq。参见这篇详细的文章关于它的历史。
创作者 Andrej Krátky 于 1988 年开始设计,用墨水在纸上手绘。他说“第一阶段的绘画相对较快”。
数字化主要使用 Metafont 进行,因为它免费并且可以在普通 PC 上运行:20 世纪 80 年代,捷克斯洛伐克的学生无法获得商业字体编辑系统(如 URW 的 Ikarus 字体数字化系统)。然而,
Metafont 的问题在于没有图形界面,甚至没有办法将现有绘图“扫描”到软件中。相反,每个字母都需要通过命令行以复杂的数学描述形式输入,然后才能打印或显示。
该过程非常困难并且“极其耗时”,因为需要用方格纸覆盖图纸,并以 1/10 毫米的精度测量尺寸,以“确定每个字符关键点的坐标”。
下面是他这样设计的小写字母“i”的示例:
斜体版本是使用 Metafont 的插值创建的;他还尝试了各种粗细等。他发现 Metafont 在这个阶段很有帮助:
Metafont 终于让我有机会尝试倾斜(真正的斜体)版本的草书。[…] Metafont 的另一个重要功能是它能够从两个极端的基本粗细中创建中间粗细。
几年后,数字化的 Metafont 文件被转换成 Postscript,然后转换成 Opentype,添加了缺失的字符,并进行了一些设计更改,字体最终2009 年以 Nara 名义发布。