專利名稱:字符圖形產(chǎn)生器、字符產(chǎn)生方法及其存儲媒質(zhì)的制作方法
本申請涉及一份于1997年11月18日提交的日本申請?zhí)枮槠匠?(1997)-317058的日本專利申請,該日本專利申請根據(jù)35 USC$119要求優(yōu)先權(quán),在此引入該申請公開的全部內(nèi)容以作參考。
本發(fā)明涉及字符圖形產(chǎn)生器、字符產(chǎn)生方法及其存儲媒質(zhì),尤其涉及在字處理器、個人計算機等中用作文檔處理裝置并以高速產(chǎn)生位圖字體的字符圖形產(chǎn)生器,本發(fā)明還特別涉及一種存儲媒體,該存儲媒體包含用于控制字符圖形產(chǎn)生器的程序。
迄今為止,由輪廓字體產(chǎn)生字符圖形(character pattern)的方法與位圖字體相比,是一種產(chǎn)生平滑字符圖形而沒有凹凸不平的方法。該輪廓字體帶來的問題是,因為字符圖形是通過使用由采樣字符的輪廓而獲得的多個控制點的坐標作為字體數(shù)據(jù)、根據(jù)字符大小或字符式樣進行坐標變換和涂繪輪廓的內(nèi)部來獲得的,所以必須存儲的控制點的坐標的數(shù)據(jù)量與位圖字體相比增加了,因而需要大容量的ROM,還降低了產(chǎn)生字符圖形的速度。
因此,日本未進行實審的專利申請,其公開號為平成第6(1994)-167963號提出了一種方法和裝置,用于產(chǎn)生字符圖形,其中大量的字體數(shù)據(jù)可以以減少的存儲容量來存儲。該字符圖形產(chǎn)生方法涉及存儲表示構(gòu)成字符圖形的公共要素的圖案信息(figure information)和對應于相應字符的圖案信息的結(jié)構(gòu)信息;將對應于所指定的字符的每個圖案信息擴展為一個位圖(bit map);以及根據(jù)結(jié)構(gòu)信息合成所擴展的位圖數(shù)據(jù),以產(chǎn)生字符圖形。同樣,通過存儲所擴展的圖案信息的位圖數(shù)據(jù),如果圖案信息要擴展為位圖數(shù)據(jù)且對應的位圖數(shù)據(jù)已經(jīng)存儲,則通過合成所存儲的位圖數(shù)據(jù)來產(chǎn)生字符圖形。
根據(jù)在上述日本未進行實審的專利申請所公開的平成第6(1994)-167963號公開的字符圖形產(chǎn)生方法,圖案信息以控制點的坐標構(gòu)成,這些控制點可以給定示出一部分字符圖形的輪廓,這樣,通過一次全部地存儲公共圖案信息,控制點的坐標的數(shù)據(jù)量可以與圖案信息的公共部分成比例減少。然而,該方法帶來的問題是,以輪廓字符的同樣方式,產(chǎn)生字符圖形的速度降低了,這是因為在擴展圖案信息為位圖數(shù)據(jù)中,字符的結(jié)構(gòu)信息根據(jù)所指定的字符大小被變換,并根據(jù)所變換的結(jié)構(gòu)信息通過變換每個字符信息的大小/位置,被合成為位圖數(shù)據(jù)。
本發(fā)明考慮了這些情況,本發(fā)明的目的是提供一種字符圖形產(chǎn)生器和字符產(chǎn)生方法,能夠以高速產(chǎn)生位圖字體,而不擴展圖案信息為輪廓數(shù)據(jù),例如,通過直接從組成字符圖形的筆畫的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體,本發(fā)明還提供了它們的存儲媒質(zhì)。
相應地,本發(fā)明提供了一種字符圖形產(chǎn)生器,包括輸入?yún)^(qū),用于輸入一輸入信息,該信息包括要產(chǎn)生的字符圖形的字符碼,字符式樣,和字符大??;字符信息存儲區(qū),用于為每個字符碼存儲字符信息,該字符信息包括由構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)組成筆畫配置信息;位圖字體產(chǎn)生區(qū),用于從字符信息存儲區(qū)讀取筆畫配置信息,該筆畫配置信息包含在基于由輸入?yún)^(qū)輸入的輸入信息上的字符信息中,和用于基于已讀取的筆畫配置信息的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體;和輸出區(qū),用于以字符圖形輸出由位圖字體產(chǎn)生區(qū)產(chǎn)生的位圖字體。
結(jié)合附圖,從本發(fā)明的優(yōu)選實施例的以下詳細描述可以更好地理解本發(fā)明,附圖中
圖1是示出根據(jù)本發(fā)明的一個實施例的字符圖形產(chǎn)生器的硬件結(jié)構(gòu)的方框圖;圖2是示出根據(jù)本發(fā)明的實施例的產(chǎn)生公共筆畫結(jié)構(gòu)信息的位圖字體的過程的流程圖;圖3是示出圖2的步驟9的子程序處理的過程的流程圖;圖4(1)和4(2)是用于解釋存儲在根據(jù)本發(fā)明的實施例的字符信息存儲區(qū)中的漢字字符“培”的字符信息的圖;圖5(1)和5(2)是示出圖4的字符信息的圖像的圖;圖6是示出根據(jù)本發(fā)明的實施例字符式樣的公共筆畫結(jié)構(gòu)信息的例子的圖;圖7(1)和7(2)是示出圖6的公共筆畫結(jié)構(gòu)信息的圖像的圖;圖8是示出根據(jù)本發(fā)明的實施例的對應于每個字符式樣的筆畫配置信息的輪廓數(shù)據(jù)的例子的圖;圖9是示出根據(jù)本發(fā)明的實施例的公共位圖數(shù)據(jù)的例子的本發(fā)明的字符圖形產(chǎn)生器包括輸入?yún)^(qū),用于輸入一輸入信息,該信息包括要產(chǎn)生的字符圖形的字符碼,字符式樣,和字符大?。蛔址畔⒋鎯^(qū),用于為每個字符碼存儲字符信息,該字符信息包括由構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)組成的筆畫配置信息;位圖字體產(chǎn)生區(qū),用于從字符信息存儲區(qū)讀取筆畫配置信息,該筆畫配置信息包含在基于由輸入?yún)^(qū)輸入的輸入信息上的字符信息中,和用于基于已讀取的筆畫配置信息的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體;和輸出區(qū),用于以字符圖形輸出由位圖字體產(chǎn)生區(qū)產(chǎn)生的位圖字體。
在本發(fā)明中,輸入?yún)^(qū)最好包括輸入裝置,諸如鍵盤,筆跡板,圖標等。字符信息存儲區(qū)最好包括存儲裝置,諸如ROM,軟盤,硬盤等。位圖字體產(chǎn)生區(qū)最好包括微處理器,該微處理器包括CPU,ROM,RAM,I/O端口等。輸出區(qū)最好包括顯示裝置,諸如LCD(液晶顯示),CRT顯示,等離子顯示等,和打印裝置,諸如熱敏式打印機,激光打印機等。
根據(jù)本發(fā)明,不擴展圖形信息為輪廓數(shù)據(jù),通過直接從組成字符圖形的筆畫的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體,位圖字體可以以高速產(chǎn)生。
字符信息還可能含有公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得。根據(jù)上述結(jié)構(gòu),字符信息存儲區(qū)的數(shù)據(jù)量可以進一步減少,例如,將公共筆畫配置信息公有化為構(gòu)成“基本”漢字字符的“基本”結(jié)構(gòu)信息。
公共筆畫結(jié)構(gòu)信息還可以含有指示一個或多個公共筆畫配置信息的位置/大小的位置/大小信息。根據(jù)上述結(jié)構(gòu),可以由,例如,考慮“基本”漢字字符的平衡和大小來產(chǎn)生位圖字體,該漢字字符通過獨立地提供指示公共筆畫結(jié)構(gòu)信息的位置/大小的位置/大小信息由公共筆畫結(jié)構(gòu)信息來構(gòu)造。
字符信息還可以含有公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得;和用于糾正公共筆畫結(jié)構(gòu)信息的筆畫配置信息的骨架坐標數(shù)據(jù)的糾正數(shù)據(jù)。根據(jù)上述結(jié)構(gòu),由公共筆畫結(jié)構(gòu)信息構(gòu)造的“基本”漢字字符的平衡可以被糾正。
字符信息存儲區(qū)可以為每個字符碼和每個字符式樣存儲字符信息,該字符信息包括由構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)組成的筆畫配置信息。根據(jù)上述結(jié)構(gòu),可以為每個字符式樣直接從構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體。
字符信息存儲區(qū)最好存儲公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息和用于糾正公共筆畫結(jié)構(gòu)信息的公共筆畫配置信息的糾正數(shù)據(jù)的組合而獲得。根據(jù)上述結(jié)構(gòu),對每個字符,該筆畫配置信息可以被糾正。
本發(fā)明的字符圖形產(chǎn)生器還可以包括公共位圖數(shù)據(jù)存儲區(qū),用于存儲對應于公共筆畫結(jié)構(gòu)信息的公共位圖數(shù)據(jù),該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得。從而字符產(chǎn)生區(qū)通過提取存儲在公共位圖數(shù)據(jù)存儲區(qū)的公共位圖數(shù)據(jù),將公共筆畫配置信息轉(zhuǎn)換成位圖數(shù)據(jù)。根據(jù)上述結(jié)構(gòu),通過以高速將公共筆畫配置信息轉(zhuǎn)換成位圖數(shù)據(jù)和組合所轉(zhuǎn)換的位圖數(shù)據(jù),可以產(chǎn)生位圖字體。
公共位圖數(shù)據(jù)存儲區(qū)還可以為每個字符碼存儲用于糾正公共位圖數(shù)據(jù)的糾正數(shù)據(jù)。根據(jù)上述結(jié)構(gòu),在通過組合公共位圖數(shù)據(jù)產(chǎn)生位圖字體中,用糾正數(shù)據(jù)可以糾正位圖數(shù)據(jù)。
公共位圖數(shù)據(jù)存儲區(qū)還可以為每個字符式樣存儲對應于公共筆畫結(jié)構(gòu)信息的公共位圖數(shù)據(jù)。該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得。根據(jù)上述結(jié)構(gòu),通過組合對應于字符式樣的公共位圖數(shù)據(jù)可以產(chǎn)生位圖字體。
公共位圖數(shù)據(jù)存儲區(qū)還可以為每個字符式樣存儲用于糾正公共位圖數(shù)據(jù)的糾正數(shù)據(jù)。根據(jù)上述結(jié)構(gòu),通過組合對應于字符式樣的公共位圖數(shù)據(jù)可以產(chǎn)生指定字符式樣的位圖字體。
本發(fā)明的字符圖形產(chǎn)生器還可以包括增大/減小轉(zhuǎn)換區(qū),用于根據(jù)字符大小確定筆畫配置信息的骨架坐標數(shù)據(jù)的增大/減小比。根據(jù)上述結(jié)構(gòu),與指定的字符大小一致的位圖字體可以通過根據(jù)字符大小確定增大/減小比來產(chǎn)生。
筆畫配置信息的骨架坐標數(shù)據(jù)可以至少含有筆畫的起點和終點的坐標值。根據(jù)上述結(jié)構(gòu),可以通過考慮筆畫的骨架坐標數(shù)據(jù)的平衡和大小,產(chǎn)生位圖數(shù)據(jù)。
本發(fā)明的字符圖形產(chǎn)生器還可以包括輪廓數(shù)據(jù)存儲區(qū),用于為每個字符碼和字符式樣存儲字符圖形的公共筆畫的輪廓坐標數(shù)據(jù);輪廓字體產(chǎn)生區(qū),用于基于由輸入?yún)^(qū)輸入的輸入信息從輪廓數(shù)據(jù)存儲區(qū)讀取輪廓坐標數(shù)據(jù),和用于基于已讀取的輪廓坐標數(shù)據(jù)產(chǎn)生輪廓字體。根據(jù)上述結(jié)構(gòu),也可以通過預先在輪廓數(shù)據(jù)存儲區(qū)中存儲的輪廓坐標數(shù)據(jù),產(chǎn)生輪廓字體。
現(xiàn)在參考附圖用實施例詳細說明本發(fā)明。應注意,本發(fā)明不限于這些實施例和附圖。
圖1是示出根據(jù)本發(fā)明的一個實施例的字符圖形產(chǎn)生器的硬件結(jié)構(gòu)的方框圖。圖1中,標號1代表輸入?yún)^(qū),包括輸入裝置,諸如鍵盤,筆跡板,圖標等。輸入?yún)^(qū)1輸入字符產(chǎn)生參數(shù),諸如要產(chǎn)生的位圖字體的字符碼,字符式樣和字符大小,可選地輸入位圖產(chǎn)生方法(即,輪廓字體擴展和字符信息擴展哪一個要用),并發(fā)出命令以產(chǎn)生位圖字體。
標號2代表擴展控制區(qū),包括CPU和程序ROM。擴展控制區(qū)2切換擴展位圖字體的處理方法,從字符信息存儲區(qū)9讀取字符信息。標號3代表輪廓字體產(chǎn)生區(qū),包括CPU和程序ROM。輪廓字體產(chǎn)生區(qū)3從擴展控制區(qū)2讀取字符產(chǎn)生參數(shù)和字符信息,從公共筆畫配置信息存儲區(qū)10、輪廓數(shù)據(jù)存儲區(qū)11等讀取筆畫配置信息和輪廓數(shù)據(jù),以產(chǎn)生輪廓字體。
標號4代表輪廓字體增大/減小轉(zhuǎn)換區(qū),包括CPU和程序ROM。輪廓字體增大/減小轉(zhuǎn)換區(qū)4根據(jù)字符產(chǎn)生參數(shù)對由輪廓字體產(chǎn)生區(qū)3產(chǎn)生的輪廓字體進行增大/減小轉(zhuǎn)換。
標號5代表輪廓字體擴展區(qū),包括CPU和程序ROM。輪廓字體擴展區(qū)5將由輪廓字體增大/減小轉(zhuǎn)換區(qū)4轉(zhuǎn)換的輪廓字體擴展成位圖字體,在位圖字體擴展存儲區(qū)13中存儲所獲得的位圖字體。
標號6代表字符信息增大/減小轉(zhuǎn)換區(qū),包括CPU和程序ROM。字符信息增大/減小轉(zhuǎn)換區(qū)6根據(jù)來自擴展控制區(qū)2的字符產(chǎn)生參數(shù)進行字符信息的增大/減小轉(zhuǎn)換。
標號7代表字符信息擴展區(qū),包括CPU和程序ROM。字符信息擴展區(qū)7由字符信息增大/減小轉(zhuǎn)換區(qū)6轉(zhuǎn)換的字符信息,從公共筆畫配置信息存儲區(qū)10讀取公共筆畫配置信息,從公共位圖數(shù)據(jù)存儲區(qū)12讀取公共位圖數(shù)據(jù),以擴展位圖字體,和在位圖擴展數(shù)據(jù)存儲區(qū)13中存儲所擴展的位圖字體數(shù)據(jù)。
標號8代表輸出區(qū),包括顯示裝置,諸如LCD(液晶顯示),CRT顯示,等離子顯示等,和打印裝置,諸如熱敏打印機,激光打印機等。輸出區(qū)8以位圖字體輸出存儲在位圖擴展數(shù)據(jù)存儲區(qū)13中的位圖信息。
標號9代表字符信息存儲區(qū),包括ROM和RAM。字符信息存儲區(qū)9存儲字符信息,諸如筆畫配置信息、公共筆畫結(jié)構(gòu)信息和糾正數(shù)據(jù),它們在根據(jù)字符碼產(chǎn)生字符中是需要的。
標號10代表公共筆畫結(jié)構(gòu)信息存儲區(qū),包括ROM和RAM。公共筆畫結(jié)構(gòu)信息存儲區(qū)10存儲由一個或多個公共筆畫配置信息的組合而獲得的公共筆畫結(jié)構(gòu)信息。
標號11代表輪廓數(shù)據(jù)存儲區(qū),包括ROM和RAM。輪廓數(shù)據(jù)存儲區(qū)11存儲輪廓數(shù)據(jù),用于根據(jù)筆畫配置信息傳遞(past)或產(chǎn)生輪廓字體。
標號12代表公共位圖數(shù)據(jù)存儲區(qū),包括ROM和RAM。公共位圖數(shù)據(jù)存儲區(qū)12存儲對應于公共筆畫結(jié)構(gòu)信息的位圖數(shù)據(jù)。
標號13代表位圖字體擴展存儲區(qū),包括ROM和RAM。位圖字體擴展存儲區(qū)13存儲已經(jīng)根據(jù)字符產(chǎn)生參數(shù)擴展的位圖字體數(shù)據(jù)。
標號14代表位圖字體數(shù)據(jù)存儲區(qū),包括ROM和RAM。位圖字體數(shù)據(jù)存儲區(qū)14存儲根據(jù)字符式樣、字符碼、字符大小等的位圖字體。
標號15代表存儲媒質(zhì),包括CD-ROM、IC卡、MD、軟盤等。存儲媒質(zhì)15存儲擴展控制處理程序,輪廓字體產(chǎn)生處理程序,輪廓字體增大/減小轉(zhuǎn)換處理程序,字符信息擴展處理程序,字符信息,公共筆畫結(jié)構(gòu)信息,輪廓數(shù)據(jù),公共位圖數(shù)據(jù)和位圖字體數(shù)據(jù)。
標號16代表媒體讀取裝置,用于讀取存儲在記錄媒體15中的各種處理程序和各種數(shù)據(jù),以在區(qū)2-7的每一個和存儲區(qū)10-14的每一個中安裝處理程序和各種數(shù)據(jù)。
標號17代表控制區(qū),包括微處理器,該微處理器包括CPU,ROM,RAM,I/O端口??刂茀^(qū)17由總線18控制整個字符圖形產(chǎn)生器。標號18代表總線,通過它,地址、字符信息和各種數(shù)據(jù)由控制區(qū)17傳送。
文檔處理器,諸如字處理器或個人計算機,加入本實施例的字符圖形產(chǎn)生器后,可以高速將各種字符圖形轉(zhuǎn)換成位圖以進行打印。
參考圖1,根據(jù)本發(fā)明的另一發(fā)明,提供了一種存儲媒體,含有通過計算機用于控制字符圖形產(chǎn)生器的程序。該程序執(zhí)行以下功能使計算機運行以在字符信息存儲區(qū)內(nèi)為每個字符碼存儲字符信息,該字符信息含有由構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)組成的筆畫配置信息;當關于要產(chǎn)生的字符圖形的字符碼、字符式樣和字符大小的輸入信息由輸入?yún)^(qū)輸入時,使計算機運行以從字符信息存儲區(qū)讀取筆畫配置信息,該筆畫配置信息包含在基于輸入信息上的字符信息中,并且基于已讀取的筆畫配置信息的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體;使計算機運行以便以字符圖形從輸出區(qū)輸出產(chǎn)生的位圖字體。
圖2是示出根據(jù)本發(fā)明的實施例的字符圖形產(chǎn)生器的字符圖形產(chǎn)生的過程的流程圖。在圖2中,將特別解釋從字符信息產(chǎn)生位圖字體的字符圖形的過程。
步驟S1開始位圖字體產(chǎn)生處理。
步驟S2從輸入?yún)^(qū)輸入字符產(chǎn)生參數(shù),諸如要產(chǎn)生的字符圖形的字符碼、字符式樣和字符大小,和產(chǎn)生字符圖形的方法(由位圖字體擴展或輪廓字體擴展的字符圖形產(chǎn)生方法)。
步驟S3擴展控制區(qū)2檢查是否對應于字符產(chǎn)生參數(shù)的位圖數(shù)據(jù)出現(xiàn)在位圖字體數(shù)據(jù)存儲區(qū)14中。如果數(shù)據(jù)出現(xiàn),過程進入步驟S17,如果數(shù)據(jù)不出現(xiàn),過程進入步驟S4。
步驟S17從位圖字體數(shù)據(jù)存儲區(qū)14讀取對應的位圖字體數(shù)據(jù),并存儲在位圖字體擴展存儲區(qū)13中。過程進入步驟S11。
步驟S4對應于字符產(chǎn)生參數(shù)的字符碼的字符信息從字符信息存儲區(qū)9中讀取。
圖4(1)和4(2)是用于解釋存儲在根據(jù)本發(fā)明的實施例的字符信息存儲區(qū)中的漢字字符“培”的字符信息的圖;圖4(1)示出一種情況,其中,字符信息僅包括筆畫配置信息。在這種情況下,字符信息包括字符的變換JIS(日本工業(yè)標準)碼、筆畫配置信息的坐標數(shù)據(jù)、對應的輪廓數(shù)據(jù)的標號、和用于為每個字符式樣改變字符信息的數(shù)據(jù)。
圖4(2)示出一種情況,其中,字符信息包括公共筆畫結(jié)構(gòu)信息。在這種情況下,字符信息包括公共筆畫結(jié)構(gòu)信息的坐標和標號、用于為每個字符式樣改變字符信息的數(shù)據(jù)、和用于為每個字符產(chǎn)生大小改變公共筆畫結(jié)構(gòu)信息的數(shù)據(jù)。
圖5(1)和5(2)示出圖4(1)和4(2)的字符信息的圖像。這里,字符信息包括獨立筆畫配置信息的情況和字符信息包括公共筆畫結(jié)構(gòu)信息的情況被分別示出。然而,字符信息可以同時都包括以上兩者。
在字符信息擴展為獨立筆畫配置信息后,包括公共筆畫結(jié)構(gòu)信息的字符信息轉(zhuǎn)換為位圖字體。相應地,圖4(2)中所示的包括公共筆畫結(jié)構(gòu)信息的字符信息的擴展將隨后解釋。
步驟S5擴展控制區(qū)2檢查在步驟4讀取的字符信息,對每個字符式樣,是否含有對應于要產(chǎn)生的字符式樣的字符信息的變化數(shù)據(jù)。
如果要產(chǎn)生字符式樣T,判定變化數(shù)據(jù)(糾正數(shù)據(jù))含在公共筆畫結(jié)構(gòu)信息的數(shù)A100中,過程進入步驟S6。如果要產(chǎn)生除了字符式樣T的字符式樣,因為沒有變化數(shù)據(jù)提供,過程進入步驟S7。
步驟S6擴展控制區(qū)2根據(jù)為每個字符式樣提供的字符信息改變數(shù)據(jù),改變對應于要產(chǎn)生的字符式樣的字符信息。在產(chǎn)生字符式樣T中,通過給P30加上改變數(shù)據(jù)ΔP30,而改變坐標數(shù)據(jù),該數(shù)據(jù)是字符信息的公共筆畫結(jié)構(gòu)信息A100的坐標數(shù)據(jù)。
步驟S7擴展控制區(qū)2檢查輪廓字體擴展和字符信息擴展(位圖字體擴展)哪一個要用于將字符信息轉(zhuǎn)換為位圖字體。該選擇可以通過由輸入?yún)^(qū)1和字符產(chǎn)生參數(shù)一起指定來實現(xiàn),或者該判斷可以根據(jù)諸如字符大小、輸出裝置的分辨率、或擴展速度的條件來作出。
如果要實現(xiàn)輪廓字體擴展,過程進入步驟S13,如果要實現(xiàn)字符信息擴展,過程進入步驟S8。
步驟S13輪廓字體產(chǎn)生區(qū)3根據(jù)字符產(chǎn)生參數(shù),擴展公共筆畫結(jié)構(gòu)信息。
圖6示出根據(jù)本發(fā)明的實施例字符式樣S的公共筆畫結(jié)構(gòu)信息的例子。公共筆畫結(jié)構(gòu)信息A100由三個公共筆畫配置信息組成,該公共筆畫配置信息具有對應的輪廓數(shù)據(jù)的相應坐標和標號。公共筆畫結(jié)構(gòu)信息A101由兩個公共筆畫結(jié)構(gòu)信息A102,A103組成,每個有相應的骨架坐標、公共筆畫配置信息、公共筆畫配置信息的改變數(shù)據(jù)和公共位圖改變數(shù)據(jù)。這里,公共筆畫配置信息提供給每種字符式樣。
圖7(1)和7(2)示出圖6的公共筆畫結(jié)構(gòu)信息的圖像。圖7(1)示出對應字符式樣S的情況,圖7(2)示出對應字符式樣T的情況。
接著,將解釋用于擴展?jié)h字字符“培”的公共筆畫結(jié)構(gòu)信息的方法。參見圖4(2),漢字字符“培”的字符信息含有公共筆畫結(jié)構(gòu)信息A100。相應地,從公共筆畫結(jié)構(gòu)信息存儲區(qū)10中讀取對應于要產(chǎn)生的字符式樣的公共筆畫結(jié)構(gòu)信息A100。
接著,公共筆畫結(jié)構(gòu)信息A100(P50至P55)轉(zhuǎn)換為由字符信息的公共筆畫結(jié)構(gòu)信息A100的坐標(P30,P31)所指示的大小,在對應位置合成。這樣,公共筆畫結(jié)構(gòu)信息A100擴展為獨立筆畫配置信息。
關于公共筆畫結(jié)構(gòu)信息A101,從公共筆畫結(jié)構(gòu)信息存儲區(qū)10讀取對應數(shù)據(jù),對于擴展為獨立筆畫配置信息,實現(xiàn)相似的大小轉(zhuǎn)換。
然而,由于A101包括公共筆畫結(jié)構(gòu)信息A102,A103,再讀出公共筆畫結(jié)構(gòu)信息A102,A103。另外,由于A102包括公共筆畫結(jié)構(gòu)信息的改變數(shù)據(jù),通過將ΔP67加入已讀出的A102的坐標P67,改變坐標。
隨后,用由大小轉(zhuǎn)換獲得的坐標(P56-P59)擴展A102和A103。
步驟S14在輪廓字體產(chǎn)生區(qū)3中,輪廓字體從筆畫配置信息和輪廓數(shù)據(jù)產(chǎn)生。由于對應的輪廓數(shù)據(jù)數(shù)附加筆畫配置信息,對應的輪廓數(shù)據(jù)被讀取和根據(jù)筆畫配置信息的坐標由轉(zhuǎn)換合成。
圖8是示出根據(jù)本發(fā)明的實施例的對應于每個字符式樣的筆畫配置信息的輪廓數(shù)據(jù)的例子的圖。在由公共筆畫結(jié)構(gòu)信息A100的擴展獲得的筆畫配置信息中,輪廓數(shù)據(jù)B100對應(P50,P51),這樣B100的數(shù)據(jù)從輪廓數(shù)據(jù)存儲區(qū)11讀出,根據(jù)坐標(P50,P51)通過旋轉(zhuǎn)或增大/減小來合成。
步驟S15在輪廓字體增大/減小轉(zhuǎn)換區(qū)4中,由輪廓字體產(chǎn)生區(qū)3產(chǎn)生的輪廓字體根據(jù)字符產(chǎn)生參數(shù)中的字符大小通過增大/減小來轉(zhuǎn)換。
步驟S16輪廓字體增大/減小轉(zhuǎn)換區(qū)4轉(zhuǎn)換的輪廓字體在輪廓字體擴展區(qū)5中轉(zhuǎn)換為位圖字體。在所獲得的位圖字體存入位圖字體擴展存儲區(qū)13后,過程進入步驟S11。
接著,對于在步驟S7判定要實現(xiàn)的字符信息擴展的情況,給出解釋。
步驟S8在字符信息增大/減小轉(zhuǎn)換區(qū)6中,根據(jù)在字符產(chǎn)生參數(shù)中的字符大小對于來自擴展控制區(qū)2的字符信息實現(xiàn)增大/減小轉(zhuǎn)換。
這里,如果筆畫配置信息是筆畫的骨架數(shù)據(jù),筆畫配置信息將位于具有厚度的筆畫的中心。相應地,筆畫配置的最大框架將比字符的整個框架小。
相應地,在擴展字符信息過程中,有可能獲得小于所指定的字符大小的位圖字體。相應地,對每個字符確定筆畫配置信息的最大框架,從筆畫配置信息的最大框架可以為字符信息的增大/減小轉(zhuǎn)換獲得字符信息的轉(zhuǎn)換率。
步驟S9在字符信息擴展區(qū)7中,由字符信息增大/減小轉(zhuǎn)換區(qū)6轉(zhuǎn)換的字符信息的公共筆畫結(jié)構(gòu)信息被擴展(該過程將用圖3的流程圖詳細說明)。
圖3是示出圖2的步驟9的子程序處理的過程的流程圖。參見圖3,
步驟S20擴展控制區(qū)2檢查是否公共筆畫結(jié)構(gòu)信息包括在要擴展的字符信息中。如果包括,過程進入步驟S21;如果不包括,過程進入步驟S27。
在圖4(2)中所示的字符信息包括兩個公共筆畫結(jié)構(gòu)信息。
步驟S21基于公共筆畫結(jié)構(gòu)信息和由字符信息中的坐標表示的大小,擴展控制區(qū)2檢查是否對應的公共位圖數(shù)據(jù)出現(xiàn)在公共位圖數(shù)據(jù)存儲區(qū)12中。如果出現(xiàn),過程進入步驟S23;如果沒出現(xiàn),過程進入步驟S22。
圖9是示出根據(jù)本發(fā)明的實施例的公共位圖數(shù)據(jù)的例子的圖。為每個字符式樣、公共筆畫配置信息數(shù)和大小提供該位圖數(shù)據(jù)。
這里,如果字符信息包括帶有字符式樣S的公共筆畫結(jié)構(gòu)信息A100且A100的擴展大小是6位×10位,那么確定對應的數(shù)據(jù)出現(xiàn)在公共位圖數(shù)據(jù)存儲區(qū)12中。
步驟S22擴展字符信息的公共筆畫結(jié)構(gòu)信息在該步驟中,如同步驟S13的處理,根據(jù)字符信息中的公共筆畫結(jié)構(gòu)信息,從公共筆畫結(jié)構(gòu)信息存儲區(qū)10中讀取相應的數(shù)據(jù);公共筆畫結(jié)構(gòu)信息基于改變數(shù)據(jù)而改變,且受增大/減小轉(zhuǎn)換和擴展的制約;過程進入步驟S10。
步驟S23在步驟S21中已找出的對應于公共筆畫結(jié)構(gòu)信息的公共位圖數(shù)據(jù)從公共位圖數(shù)據(jù)存儲區(qū)12中讀出。
步驟S24擴展控制區(qū)2確定是否公共位圖數(shù)據(jù)的改變數(shù)據(jù)出現(xiàn)在公共筆畫結(jié)構(gòu)信息中。如果出現(xiàn),過程進入步驟S25;如果沒出現(xiàn),過程進入步驟S26;步驟S25實現(xiàn)公共位圖數(shù)據(jù)的轉(zhuǎn)換。大小為(6,10)的公共筆畫結(jié)構(gòu)信息A102的公共位圖數(shù)據(jù)的改變數(shù)據(jù)出現(xiàn)在字符式樣S的公共筆畫結(jié)構(gòu)信息A101中。從這一數(shù)據(jù),當在公共位圖數(shù)據(jù)的上左頂點的位位置視為原點(0,0)時所確定的在坐標(5,3)的位的黑/白狀態(tài)被顛倒,以改變位圖數(shù)據(jù)的筆畫形狀。
步驟S26根據(jù)公共筆畫結(jié)構(gòu)信息的坐標位置,公共位圖數(shù)據(jù)存入位圖字體擴展存儲區(qū)13中,過程進入步驟S10。
步驟S27擴展控制區(qū)2確定是否筆畫配置信息的改變數(shù)據(jù)出現(xiàn)在字符信息中。如果出現(xiàn),過程進入步驟S28;如果沒出現(xiàn),過程進入步驟S10。
由于漢字字符“培”的字符信息包括對于字符產(chǎn)生大小為(16位×16位)的情況的公共筆畫結(jié)構(gòu)信息的改變數(shù)據(jù),所以僅當上述字符產(chǎn)生大小和字符信息的大小一致時(見圖4(2)),確定改變出現(xiàn)。
步驟S28基于公共筆畫配置信息改變數(shù)據(jù),改變筆畫配置信息,過程進入步驟S10。在漢字字符“培”的情況下,在擴展后,改變數(shù)據(jù)ΔP67加入筆畫配置信息的點P67,以改變坐標。
步驟S10字符信息的筆畫配置信息擴展為位圖。這可以由以下方法來實現(xiàn)。該方法中,當代表筆畫配置信息的線段和位圖產(chǎn)生區(qū)的位位置相交疊時,產(chǎn)生一個圓點。也可用其它方法。所擴展的位圖存入位圖字體擴展存儲區(qū)13中。
步驟S11存入位圖字體擴展存儲區(qū)13中的位圖由輸出區(qū)8讀出,作為位圖字體輸出。
步驟S12處理結(jié)束。
根據(jù)上述結(jié)構(gòu),可以導致以下效果。
通過公有化筆畫結(jié)構(gòu)信息,通過組合諸如漢字字符的“基本”的同樣筆畫配置信息獲得的數(shù)據(jù)量可以減少。
通過以遞歸的方式提供公共筆畫結(jié)構(gòu)信息,公共筆畫結(jié)構(gòu)信息的量可以減少。
通過允許公共筆畫結(jié)構(gòu)信息包括用于改變公共筆畫配置信息的結(jié)構(gòu)的數(shù)據(jù),在通過組合公共筆畫配置信息進一步產(chǎn)生公共筆畫結(jié)構(gòu)信息的過程中,可以糾正字符的平衡。
通過為每個字符式樣提供公共筆畫結(jié)構(gòu)信息,可以根據(jù)字符式樣形狀產(chǎn)生位圖字體。
通過允許字符信息包括公共筆畫結(jié)構(gòu)信息的改變數(shù)據(jù),稍稍依字符而變化的筆畫配置信息的調(diào)整可以進行。
通過提供對應于公共筆畫結(jié)構(gòu)信息的位圖數(shù)據(jù),可以以高速產(chǎn)生位圖字體。
通過允許公共筆畫結(jié)構(gòu)信息包括公共位圖數(shù)據(jù)的改變數(shù)據(jù),在轉(zhuǎn)換公共筆畫結(jié)構(gòu)信息為位圖的過程中,可以改變位圖數(shù)據(jù)。
通過為每個字符式樣存儲公共位圖數(shù)據(jù),可以根據(jù)給定的字符式樣形狀產(chǎn)生位圖。
通過允許字符信息包括每個字符式樣的筆畫配置信息的改變數(shù)據(jù),可以為多個字符式樣產(chǎn)生筆畫配置信息。
通過根據(jù)字符大小確定增大/減小比,可以產(chǎn)生位圖字體,與所指定的字符產(chǎn)生大小一致。
由于筆畫配置信息是骨架數(shù)據(jù),通過將輪廓數(shù)據(jù)加入骨架數(shù)據(jù),可以產(chǎn)生高質(zhì)量輪廓字體。
通過預先為位圖字體存儲字符圖形,根據(jù)所存儲的字符圖形可以以高速產(chǎn)生位圖字體。
根據(jù)本發(fā)明,通過直接從構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體,位圖字體可以以高速產(chǎn)生,不必擴展圖形信息為輪廓數(shù)據(jù)。
盡管參考附圖用例子全面敘述了本發(fā)明,應該理解,各種變化和修正對本領域的技術人員使顯然的。因而,除非這樣的變化和修正脫離本發(fā)明的范圍,它們將被解釋為包括在其內(nèi)。
權(quán)利要求
1.一種字符圖形產(chǎn)生器,包括輸入?yún)^(qū),用于輸入一輸入信息,該輸入信息包括要產(chǎn)生的字符圖形的字符碼,字符式樣,和字符大??;字符信息存儲區(qū),用于為每個字符碼存儲字符信息,該字符信息包括由構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)組成的筆畫配置信息;位圖(bit map)字體產(chǎn)生區(qū),用于從所述的字符信息存儲區(qū)讀取筆畫配置信息,該筆畫配置信息包含在基于由所述的輸入?yún)^(qū)輸入的所述的輸入信息上的字符信息中,和用于基于已讀取的所述的筆畫配置信息的所述的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體;和輸出區(qū),用于以字符圖形輸出由所述的位圖字體產(chǎn)生區(qū)產(chǎn)生的位圖字體。
2.如權(quán)利要求1所述的字符圖形產(chǎn)生器,其中所述的字符信息還含有公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得。
3.如權(quán)利要求2所述的字符圖形產(chǎn)生器,其中所述的公共筆畫結(jié)構(gòu)信息還含有指示一個或多個公共筆畫配置信息的位置/大小的位置/大小信息。
4.如權(quán)利要求1所述的字符圖形產(chǎn)生器,其中所述的字符信息還含有公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得;和用于糾正所述的公共筆畫結(jié)構(gòu)信息的所述的筆畫配置信息的所述的骨架坐標數(shù)據(jù)的糾正數(shù)據(jù)。
5.如權(quán)利要求1所述的字符圖形產(chǎn)生器,其中所述的字符信息存儲區(qū)為每個字符碼和每個字符式樣存儲所述的字符信息,該字符信息包括由構(gòu)成所述的字符圖形的筆畫的所述的骨架坐標數(shù)據(jù)組成的所述的筆畫配置信息。
6.如權(quán)利要求1所述的字符圖形產(chǎn)生器,其中所述的字符信息存儲區(qū)存儲所述的公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得;和用于糾正所述的公共筆畫結(jié)構(gòu)信息的所述的公共筆畫配置信息的所述的糾正數(shù)據(jù)。
7.如權(quán)利要求1所述的字符圖形產(chǎn)生器,還包括公共位圖數(shù)據(jù)存儲區(qū),用于存儲對應于公共筆畫結(jié)構(gòu)信息的公共位圖數(shù)據(jù),該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得,從而所述的字符產(chǎn)生區(qū)通過恢復存儲在所述的公共位圖數(shù)據(jù)存儲區(qū)的所述的公共位圖數(shù)據(jù),將所述的公共筆畫配置信息轉(zhuǎn)換成位圖數(shù)據(jù)。
8.如權(quán)利要求7所述的字符圖形產(chǎn)生器,其中所述的公共位圖數(shù)據(jù)存儲區(qū)還為每個字符碼存儲用于糾正所述的公共位圖數(shù)據(jù)的所述的糾正數(shù)據(jù)。
9.如權(quán)利要求7所述的字符圖形產(chǎn)生器,其中所述的公共位圖數(shù)據(jù)存儲區(qū)還為每個字符式樣存儲對應于公共筆畫結(jié)構(gòu)信息的公共位圖數(shù)據(jù),該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得。
10.如權(quán)利要求7所述的字符圖形產(chǎn)生器,其中所述的公共位圖數(shù)據(jù)存儲區(qū)還為每個字符式樣存儲用于糾正所述的公共位圖數(shù)據(jù)的所述的糾正數(shù)據(jù)。
11.如權(quán)利要求1所述的字符圖形產(chǎn)生器,還包括增大/減小轉(zhuǎn)換區(qū),用于根據(jù)所述的字符大小確定所述的筆畫配置信息的所述的骨架坐標數(shù)據(jù)的增大/減小比。
12.如權(quán)利要求1所述的字符圖形產(chǎn)生器,其中所述的筆畫配置信息的所述的骨架坐標數(shù)據(jù)至少含有筆畫的起點和終點的坐標值。
13.如權(quán)利要求1所述的字符圖形產(chǎn)生器,還包括輪廓數(shù)據(jù)存儲區(qū),用于為每個字符碼和字符式樣存儲所述的字符圖形的公共筆畫的輪廓坐標數(shù)據(jù);輪廓字體產(chǎn)生區(qū),用于基于由所述的輸入?yún)^(qū)輸入的所述的輸入信息從所述的輪廓數(shù)據(jù)存儲區(qū)讀取所述的輪廓坐標數(shù)據(jù),和用于基于已讀取的所述的輪廓坐標數(shù)據(jù)產(chǎn)生輪廓字體。
14.一種字符圖形產(chǎn)生方法,包括以下步驟從輸入?yún)^(qū)輸入一輸入信息,該輸入信息含有要產(chǎn)生的字符圖形的字符碼、字符式樣和字符大??;在字符信息存儲區(qū)中,為每個字符碼存儲字符信息,該字符信息含有由構(gòu)成所述的字符圖形的筆畫的骨架坐標數(shù)據(jù)組成的筆畫配置信息;從所述的字符信息存儲區(qū)讀取所述的筆畫配置信息,該筆畫配置信息包含在基于由所述的輸入?yún)^(qū)輸入的所述的輸入信息上的字符信息中;基于已讀取的所述的筆畫配置信息的所述的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體;和從輸出區(qū)以字符圖形輸出所產(chǎn)生的位圖字體。
15.一種存儲媒質(zhì),含有通過計算機用于控制字符圖形產(chǎn)生器的程序,該程序執(zhí)行以下功能使計算機運行以在字符信息存儲區(qū)內(nèi)為每個字符碼存儲字符信息,該字符信息含有由構(gòu)成所述的字符圖形的筆畫的骨架坐標數(shù)據(jù)組成的筆畫配置信息;當含有要產(chǎn)生的字符圖形的字符碼、字符式樣和字符大小的輸入信息由輸入?yún)^(qū)輸入時,使計算機運行以從所述的字符信息存儲區(qū)讀取所述的筆畫配置信息,該筆畫配置信息包含在基于所述的輸入信息上的字符信息中,使計算機運行以基于已讀取的所述的筆畫配置信息的所述的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體;和使計算機運行以便以字符圖形從輸出區(qū)輸出所產(chǎn)生的位圖字體。
16.如權(quán)利要求15所述的存儲媒質(zhì),其中所述的程序還執(zhí)行以下功能使計算機運行以便在字符信息存儲區(qū)中,為每個字符碼和字符式樣存儲字符信息,該字符信息還含有公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得。
17.如權(quán)利要求15所述的存儲媒質(zhì),其中所述的程序還執(zhí)行以下功能使計算機運行以便在字符信息存儲區(qū)中,為每個字符碼和字符式樣存儲字符信息,該字符信息還含有公共筆畫結(jié)構(gòu)信息,該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得,和所述的指示公共筆畫結(jié)構(gòu)信息的位置/大小的位置/大小信息。
18.如權(quán)利要求15所述的存儲媒質(zhì),其中所述的程序還執(zhí)行以下功能使計算機運行以便在公共位圖數(shù)據(jù)存儲區(qū)中,存儲對應于公共筆畫結(jié)構(gòu)信息的公共位圖數(shù)據(jù),該公共筆畫結(jié)構(gòu)信息由一個或多個公共筆畫配置信息的組合而獲得;和使計算機運行以便通過恢復存儲在所述的公共位圖數(shù)據(jù)存儲區(qū)的所述的公共位圖數(shù)據(jù),將所述的公共筆畫配置信息轉(zhuǎn)換成位圖數(shù)據(jù)。
全文摘要
一種字符圖形產(chǎn)生器,包括:輸入?yún)^(qū),輸入包括要產(chǎn)生的字符圖形的字符碼、字符式樣和字符大小的輸入信息;字符信息存儲區(qū),為每個字符碼存儲包括由構(gòu)成字符圖形的筆畫的骨架坐標數(shù)據(jù)組成筆畫配置信息的字符信息;位圖字體產(chǎn)生區(qū),從字符信息存儲區(qū)讀取包含在基于由輸入的輸入信息上的字符信息中的筆畫配置信息,和基于讀取的筆畫配置信息的骨架坐標數(shù)據(jù)產(chǎn)生位圖字體;和輸出區(qū),以字符圖形輸出由位圖字體產(chǎn)生區(qū)產(chǎn)生的位圖字體。
文檔編號B41J5/44GK1217524SQ9812419
公開日1999年5月26日 申請日期1998年11月16日 優(yōu)先權(quán)日1997年11月18日
發(fā)明者信貴豐, 藪內(nèi)優(yōu)香, 渡邊朋子, 朝井宣美 申請人:夏普公司