哪怕是李紅江已經做好了思想準備,也不禁被這數量震驚了,因為字庫設計,其實犯不著下這樣的“笨”功夫。
但是這種“笨”功夫的背後,體現得卻是決心和勇氣。
還有,這些東西,的確對後續工作有幫助。
機讀卡程序和周至設想的點陣字采集方案,的確有相似之處。
機讀卡就是一堆小方塊區域,用筆塗出標記,機讀程序會掃描機讀卡,將色塊分布讀下來,轉換成考生的答案,與標準答案做比對,計算出考生的得分。
點陣,其實就是一個三十乘以三十的小方塊的集合而成的大正方形,這個集合裡有些方塊填充了黑色,所有黑色加在一起就是一個漢字,這就叫點陣字。
白色的地方用零表示,黑色的地方用一表示,點陣字就變成了一串二進製的代碼。
這個代碼隻能表達很粗糙的字型,還需要加上矢量函數,將字的筆畫按照字體設計規則處理“圓滑”,而且還能自由的放大縮小,才能叫做“某體字矢量圖”。
將所有字集合到一起,就成了字庫。
字有了,還得方便提取,這就要給每個字編碼,當給計算機輸入該字的編碼,並且指定其輸出設備之後,計算機就會把這個字提取出來,展示到輸出設備如顯示屏,打印機上。
這個編碼其實是底層的東西,人們不需要知道其具體原理,程序員開發出了另外一套方便人類記憶和使用的方法,來完成“打字”這個概念,這就是輸入法。
人隻需要利用一套規則告訴輸入法我需要打什麼字,輸入法會把這套規則轉化為機器語言將之從字庫裡提取並展示出來,工作就完成了。
現在周至在研究的,就是如何方便快捷地在係統裡建立起點陣字的集合。
這就要改造機讀卡程序。
這就要涉及掃描圖像的定位,得找到掃描的起點位置,讓計算機知道從哪兒開始,然後是讀取,一個字九百個點,哪些賦零哪些賦一。
之後還要知道結束,就是找到掃描的終點。
此外還要添加校驗位,用一套神奇的算法確保計算機知道幾件事兒——第一,這是操作者確定要輸入一個文字;第二,讀取的這串二進製代碼一定是正確的;
計算機中心的活也很多,讓學生給周至打開一台電腦,可以訪問服務器中的程序後,麥明川和李紅江就召集學生開會,布置教研任務去了。
結果開著開著,就聽見一聲怒吼:“誰讓你亂動程序的!”
李明江心裡咯噔一下,趕緊和麥明川一起進入機房,卻發現周至已經給自己戴上了防靜電腕帶,似乎在鍵盤上輸入了什麼。
“導師!他在胡亂修改我們的程序!”剛才進來的那個學生眼睛都紅了。
周至攤著手:“修改是在修改,可是沒有胡亂修改,你們的老程序我存了盤的,剛剛我隻是在重設掃描精度,增加一些點陣字的特征參數項而已。”
“肘子你看得懂我們的程序?”李明江大為驚訝。
你是文科生也!!