PostScript的故事有很多不同的方面。这是一个关于人类读写能力深刻变化的故事,也是一个关于源代码中的商业秘密的故事。这是一个关于团队和几何重要性的故事。这是一个关于工程师企业家的动机和教育的故事。

计算机历史博物馆很高兴首次公开发布突破性打印技术PostScript的源代码。(注册下载代码在这里)。我们感谢Adobe公司的许可和支持,以及Adobe联合创始人John Warnock对这个版本的支持。

印刷的大图景

印刷术一直是一项具有深远文化影响的技术。活字最早出现在东亚。后来,在15世纪的欧洲,印刷机从榨酒机和榨油机的技术与新的实践相结合,发展到使用金属铸造大规模生产铅字。随着印刷机的出现,人类的读写能力发生了一场革命。书籍变得更便宜、生产速度更快,其结果是数量越来越多。扫盲和图书馆扩大。更广泛的信息获取改变了学习、研究、政府、商业和艺术。

一张黑白照片,两个面带微笑、留着胡子的白人男子坐在会议室里John Warnock(左)和Chuck Geschke于1982年12月创立了Adobe Systems。Adobe和Doug Menuez

40年前的1982年12月,奥多比系统公司(现在的奥多比)创立之初,该公司的联合创始人就设想了一种新型印刷机——一种从根本上来说是数字化的、利用最新计算技术的印刷机。联合创始人查克•盖什克和约翰•沃诺克与数字设备公司(Digital Equipment Corp.)和苹果公司(Apple)等电脑制造商的初步讨论使他们确信,软件是新型数字印刷机的关键。他们的愿景是:任何一台计算机都可以通过一种通用语言与打印机和排字机连接,以最高保真度打印文字和图像。在Warnock的带领下,Adobe组建了一个由技术娴熟和富有创造力的程序员组成的团队来创建这种新语言。除了两位联合创始人之外,团队成员还包括道格·布罗茨、比尔·帕克斯顿和埃德·塔夫脱。他们创建的语言是一种完整的编程语言,名为PostScript,并于1984年由Adobe发布。

在这个视频中,Geschke讨论了Adobe是如何开始关注PostScript的:

Chuck Geschke讨论了Adobe如何将PostScript作为他们最初的业务计算机历史博物馆

通过在一个通用的数学描述中对所有要打印的内容进行相同处理,PostScript授予了其他地方无法提供的能力。文本和图像可以随意缩放、旋转和移动,就像本文开头的图像一样。Adobe将PostScript授权给计算机和打印机制造商,该业务进入了高速增长时期。对这种新型软件印刷机有巨大的需求。从小型计算机和工作站的成熟世界,到快速发展的个人计算机世界,计算机制造商都采用了这种技术。打印机制造商也加入了进来,从销售成熟打印机的公司到新型激光打印机和专业排字工。软件制造商纷纷推出与PostScript兼容的产品。

推动这种增长的是Adobe围绕一个关键需求所取得的进展:为PostScript中使用提供专业质量的数字字体(以及组成这些字体的许多字体)。Adobe开发了一种新的几何描述字体的方法,该公司获得了许多最著名的字体的授权,包括亚洲语言的字体。PostScript和Adobe Type Library彻底改变了印刷和出版,并从20世纪80年代开始启动了桌面出版的爆炸性增长。由于Adobe发布了PostScript语言的详细信息,并允许其他人创建与PostScript兼容的产品,PostScript变得如此成功,以至于它成为了事实上的国际标准。如今,大多数打印机要么直接依赖PostScript技术,要么通过从它发展而来的技术:PDF,或可移植文档格式。

图拉真字体的样本。图拉真是Adobe使用其新技术创建的早期字体。Adobe

沃诺克在20世纪90年代倡导了PDF的发展,将PostScript转变为一种更安全、更容易用于数字文档的技术,但保留了互操作性、保真性和质量的所有优点。几十年来,Adobe不断增强PDF的功能,使其成为创建数字文档、打印文档以及在从台式机到笔记本电脑到智能手机和智能手表的屏幕上显示各种图形的关键标准。

今天,数字印刷机已经远远超出了Adobe联合创始人最初与他们的团队一起创建PostScript时的设想。几乎所有打印在纸上的东西都是用电脑完成的。事实上,在世界上许多地方,计算机已经成为压倒性的写作工具。正如道格·布罗茨所说,PostScript“使印刷世界民主化”。PDF现在如此成功,它也成为了全球标准,每年创建的PDF数量达到数万亿。

PostScript的图形根

印刷术是艺术和技术的结合,与文字的展示有关,尤其是印刷的。它涉及字符、单词、段落等的形状和位置。在这种情况下,排版完全是图形化的,是视觉设计的问题。数字排版没有什么不同,只是专注于计算机技术和显示。因此,PostScript的根源及其对数字排版发展的贡献在于先进的计算机图形学,这是很合适的。

Warnock是PostScript的架构师,上世纪60年代末,他在犹他大学(University of Utah)读研究生时开始了自己的计算机生涯。犹他大学当时是世界上最重要的先进计算机图形学研究中心之一。沃诺克在那里工作,后来又在犹他大学首席教授戴维·埃文斯和伊万·萨瑟兰经营的计算机图形公司工作,他采用了他们特有的几何方法来处理计算机图形。形状、场景、图像和动画的创建和设计使用数学来描述视觉的几何形状,并使用各种计算机程序来实现这些描述为图像。尤其令沃诺克印象深刻的是,他和约翰·加夫尼在埃文斯和萨瑟兰的公司帮助开发了一种名为“设计系统”的程序计算机语言。

1978年,Chuck Geschke刚刚在著名的施乐帕洛阿尔托研究中心(PARC)建立了成像科学实验室。格什克聘请沃诺克为实验室承担一项紧迫的挑战。帕洛阿尔托研究中心正在研制一套具有新型显示器的实验性计算机,这些计算机将用于一系列新型打印机——就像帕洛阿尔托研究中心最近发明的激光打印机一样。沃诺克面临的挑战是创建一个独立于设备的图形系统,可以在任何计算机、显示器或打印机上使用。

沃诺克看到了像设计系统这样的东西可以在这种新的计算环境中工作,但将重点从3D图形转移到帕洛阿尔托研究中心关注的专业质量的打印和文本和图像的高质量显示。结果是沃诺克与帕洛阿尔托研究中心的研究员马丁·纽维尔(Martin Newell)合作创建了另一种名为JaM的几何过程语言。(上面的插图是用JaM制作的。)

从1979年到1981年,JaM成为Geschke实验室一项新工作的主要组成部分。这是为了开发一种商业打印语言,这种语言可以用于帕洛阿尔托研究中心的实验计算机“施乐之星”的生产版本,并更广泛地应用于施乐的所有打印机生产线。由geschke、Butler Lampson、Jerry Mendelson、Brian Reid、Bob Sproull和warnock六人组成的研究小组将JaM方法与其他更成熟的协议技术融合在一起。其结果被命名为Interpress。

施乐公司的领导层很快就相信了Interpress的潜力,并决定将其发展成为公司的印刷标准。然而,转换到这个标准需要几年的时间,在此期间,Interpress将处于保密状态。这一延误促使格什克和沃诺克采取行动。他们离开了帕洛阿尔托研究中心,创建了一家初创公司,他们将创建一个与Interpress竞争的公司,但更完全地基于沃诺克认为非常强大的几何和过程语言方法。对于新成立的公司来说,要创建这种新语言PostScript,就像数字印刷机一样,需要一个出色的团队。

在这个视频片段中,Geschke讨论了Adobe成立背后的动机:

Chuck Geschke讨论了Adobe成立背后的动机计算机历史博物馆

在这个视频剪辑中,沃诺克讨论了建立Adobe的关键早期行动。

John Warnock讨论建立Adobe的关键早期行动计算机历史博物馆

创建PostScript的团队

1982年12月,当Geschke和Warnock创立Adobe Systems时,他们打算创造的新打印语言是他们计划、希望和愿景的核心。公司的未来取决于PostScript。Geschke和Warnock本身都是经验丰富的软件开发者。Geschke在卡内基梅隆大学(Carnegie Mellon University)获得了博士学位,从事高级编译器的研究,并且是帕洛阿尔托研究中心(PARC)开发和使用的一种重要编程语言Mesa的领导者。如前所述,Warnock拥有犹他大学(University of Utah)的计算机图形软件博士学位,并拥有多年创建与他们设想的PostScript一模一样的语言的经验。但也许是因为他们在开发尖端软件方面拥有丰富的背景,两位联合创始人知道他们需要扩大团队来创建PostScript。

一张黑白照片,一群20人在一艘大帆船的甲板上摆姿势。Adobe早期的员工和朋友在旧金山湾进行公司郊游。Adobe

Adobe的PostScript团队很快就成型了,因为帕克研究中心的另外三位才华横溢的软件创造者决定加入Geschke和Warnock: Doug Brotz, Bill Paxton和Ed Taft。Brotz在1977年加入PARC之前获得了斯坦福大学计算机科学博士学位。帕克斯顿还拥有斯坦福大学的计算机科学博士学位,并与布罗茨同年加入帕洛阿尔托研究中心。塔夫脱更早之前就加入了帕洛阿尔托研究中心,1973年在哈佛大学完成本科学业后就被盖什克聘用。在1984年年底,该团队结合Andy Shore等Adobe同事的意见,创建了PostScript。

源代码中的商业秘密

Adobe对PostScript的几何方法的承诺带来了如何应对字体(独特的字符形状)以及实际实现不同大小和风格(点大小、规则、斜体、粗体等)的大量字体的后果。在帕洛阿尔托研究中心,字体被创建为一组单独的手工制作的位图图像,对于字体的每个字符,哪些位是打开的,哪些位是关闭的,都有静态的定义。与此同时,帕洛阿尔托研究中心和其他机构的研究人员正在探索用数学方法定义字符形状的方法。在Adobe,团队遵循这种数学描述字体的方法,与PostScript的更广泛的方向保持一致,使用Bézier曲线定义字符。

但这仍然留下了设备独立性的问题。Adobe的字体定义如何应对不同的显示器、打印机和不同的分辨率?对于习惯于阅读已出版文本的眼睛来说,即使是文字外观上最轻微的不一致或不规则也很容易被注意到并引起不和谐。在较低的分辨率下,出现这些缺陷的可能性只会变得更大。在不同分辨率下可靠地呈现字体是一个关键问题。如果没有解决方案,PostScript永远不可能成为数字印刷机。

在网格上显示小写字母\u201cm\u201d的插图,字母周围有阴影方块,水平线和垂直线大致描绘它。Adobe秘密解决方案的元素,用于在显示器和打印机上为不同分辨率创建专业质量的字体。约翰·沃尔诺克

正是沃诺克提出了Adobe的解决方案,把问题本身变成了解决方案。输出的分辨率将决定一组程序,这些程序将纠正字体,以优化其在该分辨率下的外观。Warnock、Brotz和Paxton花了几个月的时间研究这些程序,最终确定了定义字体形状关键方面的方法,并将它们与指定分辨率的像素行和列相匹配,根据分辨率改变字符形状的某些方面。最终,Adobe团队认为最大的优势在于将这些方法和过程作为商业机密。它们在PostScript的源代码中一直是秘密的,公司里很少有人知道,直到沃诺克在2010年的一次演讲中公开披露了它们。在这个视频片段中,Geschke讨论了PostScript源代码中的商业秘密:

Chuck Geschke在PostScript源代码中讨论了商业秘密计算机历史博物馆

计算机历史博物馆向公众发布的PostScript源代码版本是一个非常早期的版本,可以追溯到1984年2月下旬。虽然这个版本确实包含了早期版本的“字体提示”程序,但后来作为商业机密,Bill Paxton在随后的几个月里完全重写、扩展和改进了这些方法。这些变化对PostScript完全进入市场后的成功至关重要。

编者注:这篇文章最初发表于计算机历史博物馆

感谢:感谢Doug Brotz和Bill Paxton对本文草稿的有益评论。感谢Adobe和Doug Menuez允许我使用几张图片。

本文基于计算机历史博物馆进行的口述历史和访谈,以及几个重要的出版资料:

约翰·e·沃诺克。”PostScript的起源,“在IEEE计算史年鉴,第40卷,no。3, pp. 68-76, 7月- 9月2018, doi: 10.1109/MAHC.2018.033841112。

约翰·e·沃诺克,《改变印刷业和出版业的简单想法》,见美国哲学学会会刊,第156卷,no。4, 2012,第363-78页。JSTOR,http://www.jstor.org/stable/23558230

John E. Warnock和Charles Geschke,“创建和发展Adobe系统公司”,在IEEE计算史年鉴,第41卷,no。3,第24-34页,七月至九月2019, doi: 10.1109/MAHC.2019.2923397。

对话(0)

u盘到底是谁发明的?

u盘、u盘、记忆棒:不管你叫它什么,它都是一位默默无闻的新加坡发明家的心血结晶

11分钟读取
三个巨大的u盘矗立在一片白色的大地上,后面是蓝天和白云。
Maurizio Di Iorio
蓝色的

2000年,在一个一家名不见经传的新加坡公司称跋涉2000推出了一种塑料包装的固态存储芯片,并连接到通用串行总线(USB)连接器。这款设备大约一包口香糖大小,存储8mb数据,不需要外部电源,连接时直接从计算机获取电力。它被称为ThumbDrive。

这个设备现在有很多不同的名字,包括记忆棒、u盘、u盘和u盘,它改变了电脑文件存储和传输的方式。今天,它已为全世界所熟知。

继续阅读↓ 显示更少
{“imageShortcodeIds”:[]}
Baidu