二、攻克難關(guān)
●陳堃銶已被學(xué)校指派參加調(diào)研,恢復(fù)了正常工作,她便自告奮勇,向數(shù)學(xué)系作了匯報(bào),沒(méi)想到引起很大反響,系領(lǐng)導(dǎo)決定盡快將報(bào)告呈送北大領(lǐng)導(dǎo)。
●王選毅然決定跳過(guò)第二代、第三代排版系統(tǒng),直接跨入國(guó)外還沒(méi)有商品化的第四代系統(tǒng),用激光掃描的方法來(lái)還原輸出。
●全國(guó)各地的多家單位帶著自己的研究方案和成果相聚北京,躍躍欲試,都想從中脫穎而出。
攻克最大技術(shù)難關(guān)
激光照排系統(tǒng)中的漢字信息處理有兩個(gè)重大的根本性難題,一是漢字的儲(chǔ)存,一是漢字字形信息的還原輸出。而第一個(gè)難題顯得尤為突出。
漢字的基本筆畫(huà)不如字母文字多,“點(diǎn)、橫、撇、捺、豎、彎、鉤、折、提”而已,但漢字的構(gòu)成卻比字母文字復(fù)雜得多。字母文字的單詞由字母簡(jiǎn)單排列而成,而每一個(gè)單個(gè)漢字的構(gòu)成,都是筆畫(huà)之間互相交錯(cuò)重疊,你中有我,我中有你,不可拆分。因此,漢字的一個(gè)單字實(shí)際上相當(dāng)于字母文字的一個(gè)字母了。
西文只有26個(gè)字母,所以存貯量問(wèn)題并不尖銳,而漢字字?jǐn)?shù)繁多,《康熙字典》收入的漢字多達(dá)47000多個(gè),常用字就有五六千個(gè),印刷用的漢字更存在多種字體,有宋體、黑體、仿宋、楷體等10余種,而且還有10多種大小不同的字號(hào)。
漢字字形信息量太大,是中文信息處理系統(tǒng)最大的難題。要把漢字信息存儲(chǔ)進(jìn)計(jì)算機(jī),就要把漢字變成點(diǎn)陣來(lái)表示。
一個(gè)5號(hào)字的正文字,至少需要100×100點(diǎn)陣,大號(hào)字體甚至需要1000×1000以上點(diǎn)陣。
漢字的常用字在3000字以上,印刷用的漢字多達(dá)2萬(wàn)多,加上每個(gè)字都有50多種不同風(fēng)格的字體和50多種大小不一的字號(hào),如果都用點(diǎn)陣來(lái)表示,信息量高達(dá)上千億字節(jié)。
Digiset采用的是黑白段的描述方案,壓縮率很低,對(duì)付26個(gè)英文字母還可以,對(duì)付海量的漢字點(diǎn)陣信息就行不通了。
漢字字形信息量大的問(wèn)題,一下子成為擺在王選面前的主要難關(guān)。
日本京都大學(xué)倒是發(fā)明了一種字根組合方案,壓縮率高,但質(zhì)量不好。
從1946年西方發(fā)明第一代照排機(jī)開(kāi)始,到1975年已經(jīng)過(guò)去了30年,美國(guó)報(bào)界在1970年前后已全部采用電子排版,但中國(guó)仍然在揀鉛字。
鉛字印刷的痛苦深深地印在每個(gè)排版工人的心中!他們迫切地希望,有一種比較先進(jìn)的技術(shù)能替代這種原始的勞作。
但是,漢字照排系統(tǒng)的問(wèn)題卻一直沒(méi)有得到圓滿解決。
20世紀(jì)70年代,王選有條件使用的國(guó)產(chǎn)計(jì)算機(jī)的磁心存貯器,最大容量只有64KB;沒(méi)有磁盤(pán),只有一個(gè)512KB的磁鼓和一條磁帶,相當(dāng)于美國(guó)20世紀(jì)50年代末的水平。
在這樣簡(jiǎn)陋的條件下,王選不得不另辟蹊徑,開(kāi)始設(shè)法壓縮漢字信息。
在接下來(lái)的日子,王選滿腦子的漢字橫豎彎勾,連做夢(mèng)也盡是筆畫(huà)。他的數(shù)學(xué)背景顯示出意想不到的功效,王選很快想到了用輪廓加參數(shù)的數(shù)學(xué)方法描述漢字字形,這樣做可以大大地壓縮漢字信息。
這時(shí),他發(fā)現(xiàn),漢字雖然繁多,但是有規(guī)律可循,每個(gè)漢字都可以細(xì)分成橫、豎、折等規(guī)則筆畫(huà),和撇、捺、點(diǎn)等不規(guī)則筆畫(huà)。
對(duì)于規(guī)則筆畫(huà),可以用一系列參數(shù)精確表示;對(duì)于不規(guī)則筆劃,可以用輪廓表示。他統(tǒng)計(jì)了一下,漢字中規(guī)則筆畫(huà)的比例占了近一半,所以壓縮的空間很大。
王選不停地統(tǒng)計(jì)和計(jì)算著,遇到問(wèn)題就與陳堃銶討論,兩個(gè)人完全沉浸在漢字的一筆一畫(huà)里。
1975年5月,“全電子照排系統(tǒng)”的初步設(shè)計(jì)方案終于完成。王選決定盡快向系里介紹這份方案,爭(zhēng)取學(xué)校的支持。
但連續(xù)數(shù)月的勞累,使他虛弱得作不了報(bào)告。另外,他也有一點(diǎn)擔(dān)心,擔(dān)心自己“人微言輕”。
此時(shí),陳堃銶已被學(xué)校指派參加調(diào)研,恢復(fù)了正常工作,她便自告奮勇,向數(shù)學(xué)系作了匯報(bào),沒(méi)想到引起很大反響。系領(lǐng)導(dǎo)決定盡快將報(bào)告呈送北大領(lǐng)導(dǎo)。
王選的手稿被拿到北大印刷廠打印。一些印刷工人得知他們正在研究用“電腦代替鉛字”,非常興奮,有的說(shuō):“這事真要成了,咱就不用天天跟黑乎乎的鉛字打交道了。”
有的說(shuō):“每天手托著沉甸甸的鉛字盤(pán),來(lái)回揀字排版,相當(dāng)于走幾十里路,排好了再印刷,又臟又累,有了電腦,輕輕松松坐在那里一敲鍵盤(pán)就齊了?!?/p>
大家的話,給了王選很大的鼓舞,他沒(méi)想到自己一個(gè)微不足道的病號(hào)只是提出了一個(gè)初步方案,就得到了工人們?nèi)绱藦?qiáng)烈的反應(yīng),說(shuō)明他的研究與印刷工人們是休戚相關(guān)的,這更堅(jiān)定了王選的信心。
很快,北大有關(guān)部門(mén)拿到了打印好的報(bào)告。他感到事情重大,決定立即召集有關(guān)單位開(kāi)會(huì)研究。
1975年5月的一個(gè)晚上,北大數(shù)學(xué)系、無(wú)線電系、圖書(shū)館和印刷廠的聯(lián)合會(huì)議在魏銀秋主持下舉行。陳堃銶參加了會(huì)議。
會(huì)上作出了兩項(xiàng)重要決定:一是把漢字精密照排系統(tǒng)列為北大自選項(xiàng)目,確定了“數(shù)字存貯、信息壓縮和小鍵盤(pán)輸入”的總體方案,爭(zhēng)取列入國(guó)家“748”工程的計(jì)劃;二是從各單位抽調(diào)人員成立會(huì)戰(zhàn)組,協(xié)作攻關(guān)。
開(kāi)完會(huì),夜已深了,陳堃銶一回到家里,就立即向王選細(xì)述了會(huì)議的情況,兩人心中的感受難以言表。從1966年開(kāi)始,近10年來(lái),王選一直是個(gè)邊緣人物,很多時(shí)候都有一種永世不得翻身的絕望。
直到此時(shí),他才重新感覺(jué)到了學(xué)校、科研對(duì)他的需要,甚至感到了祖國(guó)和人民的重托。
5月的北大正是槐花盛開(kāi)的季節(jié),空氣中暗香浮動(dòng),王選有些熱血澎湃,他興奮地對(duì)妻子說(shuō):“咱們又要大干一場(chǎng)了!”生活對(duì)于這對(duì)患難中走過(guò)來(lái)的夫妻,又掀開(kāi)了嶄新的一頁(yè)。
萬(wàn)事開(kāi)頭難,會(huì)戰(zhàn)組的組建是很不順利的。數(shù)學(xué)系比較積極,派了陳堃銶、丁靄麗參加軟件研制;中文系派出李一華、陳竹梅、石新春參加字模和輸入方案的工作。其他系卻不積極。
會(huì)戰(zhàn)組從1975年5月籌建,直到1977年4月,始終缺乏計(jì)算機(jī)方面的教師。
王選的編制在無(wú)線電系,但他是“吃勞?!钡牟√?hào),沒(méi)人約束他,這也恰恰給了他進(jìn)行獨(dú)立思考的自由空間,可以集中全部精力來(lái)完善總體方案。
實(shí)際上,在這些人中,真正懂硬件又懂軟件的只有王選,懂軟件的也只有陳堃銶。在接下來(lái)的幾個(gè)月里,王選一心一意地投入了工作中。
7月流火,屋里悶熱難耐,王選就搬一張破舊的木椅坐在柿子樹(shù)的蔭涼下寫(xiě)寫(xiě)畫(huà)畫(huà),進(jìn)一步實(shí)現(xiàn)和完善總體方案。陳堃銶則把壓縮信息拿到計(jì)算機(jī)上進(jìn)行各種模擬實(shí)驗(yàn)。
數(shù)學(xué)和漢字,這兩種代表不同意義的學(xué)科和符號(hào),被王選和諧、緊密地結(jié)合起來(lái),一系列世界首創(chuàng)的神奇發(fā)明誕生了:用輪廓加參數(shù)的描述方法,使?jié)h字字形信息以1比500的比率高倍壓縮;設(shè)計(jì)出一套遞推算法,使被壓縮的漢字信息高速?gòu)?fù)原成字形,而且適合通過(guò)硬件實(shí)現(xiàn),為進(jìn)一步設(shè)計(jì)關(guān)鍵的激光照排控制器鋪平了道路。更獨(dú)特的是,王選想出用參數(shù)信息控制字形變大或者變小時(shí)敏感部分的質(zhì)量的高招,從而實(shí)現(xiàn)了字形變倍和變形時(shí)的高度保真。
印刷用的漢字根據(jù)需要有大小不同的字號(hào),1975年,中國(guó)報(bào)紙的正文字是五號(hào),書(shū)刊的正文字一般也是五號(hào)。因此王選把五號(hào)字看作主體字號(hào),使其字心正好是96×96個(gè)點(diǎn),成為常規(guī)計(jì)算機(jī)字長(zhǎng)的整倍數(shù)。所以,當(dāng)他把系統(tǒng)的輸出分辨率定為742線/英寸(DPI),剛好滿足書(shū)報(bào)對(duì)文字分辨率的要求。
王選后來(lái)說(shuō):