專利名稱:一種字體處理裝置和字體處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及字符圖形的處理系統(tǒng)。本發(fā)明主要地涉及被輸出至一臺(tái)顯示單元和一臺(tái)打印機(jī)的字符圖形的細(xì)化處理和粗化處理。
關(guān)于顯示字符的字體類型,主要有兩種類型點(diǎn)陣字體和輪廓字體。
按照點(diǎn)陣字體,字符圖形被輸出成點(diǎn)陣。當(dāng)按照點(diǎn)陣字體的字符在尺寸上被放大或縮小時(shí),字符的質(zhì)量降低了。因此,在有些情況下,為了避免這樣的不便之處,為每一個(gè)字符尺寸提供一個(gè)不同的字體。
按照輪廓字體,字符輪廓用一些繪圖元素表示,例如一條直線、弧線、曲線,等等。按照輪廓字體,字符能夠被自由地放大、縮小、翻轉(zhuǎn)和變形。因此,假如字符的字型是相同的,不同尺寸的字符就可以從一個(gè)按照輪廓字體的字體中生成。因而,輪廓字體具有利用小的存儲(chǔ)器容量輸出不同尺寸字符的優(yōu)點(diǎn)。
按照相關(guān)技術(shù)參照?qǐng)D42-48對(duì)在一臺(tái)顯示單元上顯示一個(gè)輪廓字體的字符的一個(gè)光柵化過程進(jìn)行解釋。
圖42是按照相關(guān)技術(shù)的光柵化過程的流程圖。這個(gè)流程圖開始于一個(gè)接收顯示字符的字符碼,顯示字符的尺寸和在顯示屏上的顯示位置的步驟。在步驟S10中,得到顯示字符的尺寸和字符的顯示位置。在步驟S11中,裝入顯示字符的輪廓字體信息。在步驟S12中,從該輪廓字體的矢量數(shù)據(jù)中得到描繪輪廓的坐標(biāo)值。(見圖43)在步驟S13中,一些轉(zhuǎn)換矩陣,例如縮放,翻轉(zhuǎn),斜體,等等,被應(yīng)用于描繪輪廓的坐標(biāo)值。在步驟S14中,描繪輪廓的坐標(biāo)值被轉(zhuǎn)換成在尺寸上位于顯示范圍內(nèi)的值。在圖44(a)中,字符“漢”的描繪輪廓的坐標(biāo)值位于用坐標(biāo)值(0,0)和坐標(biāo)值(8191,8191)確定的正方形區(qū)域內(nèi)。這個(gè)原始數(shù)據(jù)被轉(zhuǎn)換成一個(gè)在顯示尺寸內(nèi)的值。作為結(jié)果,字符“漢”被轉(zhuǎn)換和顯示在坐標(biāo)(0,0)和(W,H)的范圍內(nèi),如圖44(b)所示。一般來(lái)說,原始數(shù)據(jù)被減少了。
在步驟S15中,描繪輪廓的坐標(biāo)值被移至開始描繪字符的位置。當(dāng)字符被顯示于一臺(tái)顯示單元等的時(shí)候,開始描繪字符的位置就是字符被顯示于屏幕上的位置。例如,在圖45中,當(dāng)開始描繪字符的位置從圖45(a)所示的坐標(biāo)值移至坐標(biāo)值(X,Y)時(shí),描繪字符的坐標(biāo)值被轉(zhuǎn)換成示于圖45(b)的坐標(biāo)值。因此,描繪“漢”的輪廓的坐標(biāo)值變成位于由坐標(biāo)(X,Y)和(X+W,Y+H)確定的正方形范圍內(nèi)。在步驟S16中,輪廓被描繪出來(lái)。如圖46(a)所示,字符“漢”的輪廓被描繪在由坐標(biāo)(X,Y)和(X+W,Y+H)所確定的范圍內(nèi)。在步驟S17中,輪廓內(nèi)部被光柵化。如圖46(b)所示,字符“漢”的內(nèi)部被光柵化。這就是按照相關(guān)技術(shù)的光柵化過程的流程。
正如所述,矢量數(shù)據(jù)被轉(zhuǎn)換成指定尺寸的,顯示于指定位置的點(diǎn)陣圖形。
當(dāng)字符被輸出至一個(gè)高分辨度的輸出裝置時(shí),按照輪廓字體的字符和按照點(diǎn)陣字體的字符幾乎具有相同的輸出質(zhì)量。然而,當(dāng)按照點(diǎn)陣字體的字符被輸出至一臺(tái)低分辨度的輸出裝置時(shí),通過使用為輸出裝置的每一種分辨度而調(diào)整的點(diǎn)陣圖形,字符被完美輸出。
同時(shí),按照輪廓字體的字符能夠被完美輸出至高分辨度的輸出裝置及低分辨度的輸出裝置。然而,當(dāng)按照輪廓字體的字符被輸出至低分辨度的輸出裝置或者按照輪廓字體的字符被以小尺寸輸出時(shí),輪廓之間就會(huì)產(chǎn)生重疊,如圖47所示。重疊的字符變成團(tuán)塊狀,難以閱讀。這個(gè)問題可以通過細(xì)化組成字符的線條來(lái)解決。
按照一種相關(guān)的細(xì)化方法,另一組具有細(xì)化的線條的字符字體信息被提供。按照另一種相關(guān)的細(xì)化方法,字符圖形與由該字符圖形的原始位置水平移動(dòng)一個(gè)點(diǎn)而成的圖形的邏輯乘積被使用。這種方法被應(yīng)用于點(diǎn)陣圖象。
另外,顯示僅水平地具有較細(xì)線條的字符圖形的一種方法在日本未實(shí)審公開專利申請(qǐng)平01-270186中被描述。這種方法如圖48所示。按照這種方法,細(xì)化處理在顯示字符圖形之前在顯示單元內(nèi)被執(zhí)行。當(dāng)字符水平地僅其有一個(gè)點(diǎn)時(shí),不執(zhí)行細(xì)化處理。當(dāng)字符水平地具有兩個(gè)或更多的點(diǎn)時(shí),通過刪除一個(gè)點(diǎn)來(lái)執(zhí)行細(xì)化處理。
按照提供一組細(xì)化的字符字體信息的方法,細(xì)化的字符字體的存儲(chǔ)器必須被提供。結(jié)果,費(fèi)用增加了。
按照使用字符圖形與由這個(gè)原始字符圖形水平移動(dòng)一個(gè)點(diǎn)而成的圖形的邏輯乘積的方法,假如字符有許多垂直的筆劃,垂直地具有一個(gè)點(diǎn)的線條會(huì)消失。
按照顯示僅具有水平較細(xì)線條的字符圖形的方法,細(xì)化處理在顯示單元內(nèi)執(zhí)行。因此,這種方法不能被應(yīng)用于許多種低分辨率的輸出裝置,例如,傳真機(jī),等等。
當(dāng)字符被輸出至高分辨率的輸出裝置,例如打印機(jī)等的時(shí)候,字符往往傾向于以比通常較粗的線條被輸出。相反,當(dāng)字符被輸出至低分辨度的輸出裝置,例如傳真機(jī)等的時(shí)候,細(xì)化處理是必要的。
當(dāng)字符被輸出至許多種輸出裝置時(shí),要求字符的線條寬度根據(jù)每一個(gè)輸出裝置自動(dòng)地調(diào)整到最佳寬度。
本發(fā)明想要解決相關(guān)技術(shù)中存在的上述問題。本發(fā)明的目的是提供基于輸出裝置的分辨度選擇地執(zhí)行細(xì)化處理、標(biāo)準(zhǔn)處理和粗化處理之一的按照輪廓字體的字體處理器和字體處理方法。
本發(fā)明的目的還在于提供區(qū)分字符的字體處理器和字體處理方法,對(duì)這些字符將基于每一個(gè)輸出裝置的分辨度執(zhí)行細(xì)化處理,標(biāo)準(zhǔn)處理和粗化處理之一。
按照本發(fā)明的一個(gè)方面,一個(gè)字體處理器包含一個(gè)用來(lái)存儲(chǔ)輪廓字體信息的字體存儲(chǔ)器;一個(gè)用來(lái)指示輪廓的線條寬度的寬度指示器;一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有指定線條寬度的輪廓圖象;一個(gè)字體發(fā)生器,與輪廓產(chǎn)生器結(jié)合,用來(lái)產(chǎn)生基于輪廓圖象的字體圖象;及輸出裝置,與字體發(fā)生器結(jié)合,用于輸出字體圖象。
按照本發(fā)明的另一方面,一個(gè)字體處理器包含一個(gè)用來(lái)存儲(chǔ)輪廓字體信息的字體存儲(chǔ)器;
一個(gè)光柵化器,與字體存儲(chǔ)器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生輪廓并把這個(gè)輪廓轉(zhuǎn)換成包括輪廓和輪廓的內(nèi)部區(qū)域的光柵圖象;一個(gè)用來(lái)指示輪廓的線條寬度的寬度指示器;一個(gè)輪廓產(chǎn)生器,與寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有指定線條寬度的輪廓圖象;一個(gè)處理單元,與輪廓產(chǎn)生器和光柵化器結(jié)合,用來(lái)利用輪廓圖象處理光柵圖象以便修正光柵圖象而產(chǎn)生修正的光柵圖象;及輸出裝置,與處理單元結(jié)合,用來(lái)輸出修正的光柵圖象。
按照本發(fā)明的另一方面,一個(gè)字體處理器包含一個(gè)用來(lái)存儲(chǔ)輪廓字體信息的字體存儲(chǔ)器;一個(gè)用來(lái)指示輪廓的線條寬度的寬度指示器;一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有指定線條寬度的輪廓圖象;一個(gè)粗線條產(chǎn)生器,與輪廓產(chǎn)生器結(jié)合,用來(lái)基于輪廓圖象產(chǎn)生光柵圖象,這個(gè)光柵圖象包括輪廓圖象和輪廓圖象的內(nèi)部區(qū)域;一個(gè)處理單元,用來(lái)利用輪廓圖象處理光柵圖象以便修正光柵圖象而產(chǎn)生修正的光柵圖象;及輸出裝置,與處理單元結(jié)合,用來(lái)輸出修正的光柵圖象。
按照本發(fā)明的另一方面,一個(gè)字體處理器包含一個(gè)用來(lái)存儲(chǔ)輪廓字體信息的字體存儲(chǔ)器;一個(gè)用來(lái)指示輪廓的線條寬度的寬度指示器;
一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有指定線條寬度的輪廓圖象;一個(gè)專用圖象產(chǎn)生器(exclusive image producer),與輪廓產(chǎn)生器結(jié)合,用來(lái)產(chǎn)生包括輪廓圖象和輪廓的外部區(qū)域的專有圖象(exclusive image);一個(gè)光柵化器,與專用圖象產(chǎn)生器結(jié)合,用來(lái)從預(yù)先確定的區(qū)域中排除專有圖象以便產(chǎn)生光柵圖象;及輸出裝置,與光柵化器結(jié)合,用來(lái)輸出由光柵化器產(chǎn)生的光柵圖象。
按照本發(fā)明的另一方面,一個(gè)字體處理器包含一個(gè)用來(lái)存儲(chǔ)輪廓字體信息的字體存儲(chǔ)器;一個(gè)用來(lái)指示輪廓的線條寬度的寬度指示器;一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有指定線條寬度的輪廓圖象;一個(gè)粗線條產(chǎn)生器,與輪廓產(chǎn)生器結(jié)合,用來(lái)基于輪廓圖象產(chǎn)生光柵圖象,這個(gè)光柵圖象包括輪廓圖象和這個(gè)輪廓圖象的內(nèi)部區(qū)域;及輸出裝置,與粗線條產(chǎn)生器結(jié)合,用來(lái)輸出的粗線條產(chǎn)生器產(chǎn)生的光柵圖象。
按照本發(fā)明的另一方面,一個(gè)用來(lái)產(chǎn)生修正的光柵圖象的字體處理方法包含下列步驟產(chǎn)生基于輪廓字體信息的輪廓并光柵化輪廓及輪廓的內(nèi)部區(qū)域來(lái)產(chǎn)生光柵圖象;產(chǎn)生基于輪廓字體信息的具有輪廓寬度的輪廓圖象;及通過執(zhí)行一個(gè)預(yù)先制定的運(yùn)算,用輪廓圖象修正光柵圖象,來(lái)生成修正的光柵圖象。
按照本發(fā)明另一方面,一個(gè)用來(lái)產(chǎn)生修正的光柵圖象的字體處理方法包含下列步驟產(chǎn)生基于輪廓字體信息的具有輪廓寬度的輪廓圖象;從輪廓圖象和輪廓圖象的內(nèi)部區(qū)域中產(chǎn)生光柵圖象;及通過執(zhí)行一個(gè)預(yù)先制定的運(yùn)算,用輪廓圖象修正光柵圖象,來(lái)生成修正的光柵圖象。
按照本發(fā)明另一方面,一個(gè)用來(lái)產(chǎn)生光柵圖象的字體處理方法包含下列步驟產(chǎn)生基于輪廓字體信息的具有輪廓寬度的輪廓圖象;從輪廓圖象和輪廓圖象的外部區(qū)域中產(chǎn)生專有圖象;及通過對(duì)一個(gè)預(yù)先確定的區(qū)域刪除專有圖象來(lái)產(chǎn)生光柵圖象。
在圖中,
圖1圖示在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的原理;圖2是本發(fā)明中的輪廓的寬度的解釋圖;圖3給出在本發(fā)明中的一個(gè)硬件配置;圖4是本發(fā)明的一個(gè)實(shí)施例的框圖;圖5給出在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的流程;圖6給出在本發(fā)明的一個(gè)實(shí)施例中的基于顯示尺寸和分辨度的輪廓寬度;圖7給出在本發(fā)明的一個(gè)實(shí)施例中的基于顯示尺寸和字型的輪廓寬度;圖8給出在本發(fā)明的一個(gè)實(shí)施例中的按照字符類型的輪廓寬度的修正值;圖9圖示在本發(fā)明的一個(gè)實(shí)施例中的一個(gè)放大的點(diǎn)陣圖形的輪廓圖象;圖10圖示在本發(fā)明的一個(gè)實(shí)施例中的放大的輪廓圖象的點(diǎn)陣圖形;圖11圖示在本發(fā)明的一個(gè)實(shí)施例中的輪廓圖象的點(diǎn)陣圖形(EXOR);圖12圖示本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的詳情;圖13是本發(fā)明的一個(gè)實(shí)施例中的框圖;圖14圖示本發(fā)明的一個(gè)實(shí)施例中的粗化處理的原理;圖15圖示對(duì)本發(fā)明的一個(gè)實(shí)施例中的粗化處理的詳細(xì)的解釋圖;圖16給出在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化或粗化處理的流程;圖17是本發(fā)明的一個(gè)實(shí)施例中的框圖;圖18圖示本發(fā)明的一個(gè)實(shí)施例中的粗化處理的原理;圖19圖示對(duì)本發(fā)明的一個(gè)實(shí)施例中的粗化處理的詳細(xì)的解釋圖;圖20給出在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理或粗化處理的流程;圖21是本發(fā)明的一個(gè)實(shí)施例中的框圖;圖22給出在本發(fā)明的一個(gè)實(shí)施例中的字體顯示的流程的一個(gè)實(shí)例;圖23給出在本發(fā)明的一個(gè)實(shí)施例中高速緩沖存儲(chǔ)器被使用的情況下,處理的流程;圖24解釋在本發(fā)明的一個(gè)實(shí)施例中的特征;圖25是本發(fā)明的一個(gè)實(shí)施例中的框圖;圖26給出本發(fā)明的一個(gè)實(shí)施例的處理流程;圖27給出在本發(fā)明的一個(gè)實(shí)施例中,基于分辨度的判斷的一個(gè)實(shí)例;圖28給出在本發(fā)明的一個(gè)實(shí)施例中,細(xì)化處理,粗化處理和具有標(biāo)準(zhǔn)線條寬度的處理的流程;圖29是本發(fā)明的一個(gè)實(shí)施例中的框圖;圖30圖示本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的原理;圖31圖示本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的詳細(xì)解釋圖;圖32給出本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的流程;圖33是本發(fā)明的一個(gè)實(shí)施例中的框圖;圖34圖示本發(fā)明的一個(gè)實(shí)施例中細(xì)化處理的原理;圖35圖示在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的詳細(xì)解釋圖;圖36給出本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的流程;圖37是本發(fā)明的一個(gè)實(shí)施例中的框圖;圖38圖示在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的原理;圖39圖示在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的詳細(xì)解釋圖;圖40給出在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的流程;圖41圖示在本發(fā)明的一個(gè)實(shí)施例中的細(xì)化處理的原理;
圖42給出按照相關(guān)技術(shù)的光柵化的流程;圖43解釋按照相關(guān)技術(shù)的光柵化;圖44解釋按照相關(guān)技術(shù)的光柵化;圖45解釋按照相關(guān)技術(shù)的光柵化;圖46解釋按照相關(guān)技術(shù)的光柵化;圖47給出在一臺(tái)低分辨度的顯示單元上顯示字符的一個(gè)實(shí)例;及圖48給出按照相關(guān)技術(shù)的細(xì)化處理方法。
在實(shí)施例1中,解釋了字體處理器的細(xì)化方法的一個(gè)例子。
實(shí)施例1的細(xì)化方法的原理圖示于圖1中。在圖1中,字符“漢”的光柵圖象圖示于(a)。它與由按照相關(guān)技術(shù)的光柵化方法產(chǎn)生的字符是相同的。字符“漢”的輪廓圖象圖示于(b)。它比用于按照相關(guān)技術(shù)的光柵化方法中的輪廓字符具有較粗的輪廓。細(xì)化的光柵圖象圖示于(c)。這個(gè)細(xì)化的光柵圖象是通過保留一個(gè)區(qū)域生成的,這個(gè)區(qū)域在輪廓圖象中是白色的而在光柵圖象中是黑色的。
按照實(shí)施例1中的細(xì)化方法,字符的光柵圖象和輪廓圖象被生成,而字符的細(xì)化圖象從光柵圖象和輪廓圖象中被生成。
在圖2中,定義了輪廓圖象的輪廓的線條寬度。
為了解釋,符號(hào) 被使用。按照在相關(guān)技術(shù)中敘述的光柵化方法, 的輪廓是示于圖2的一條虛線。這條虛線的寬度是一個(gè)占 的輪廓圖象示于在沿著虛線的兩條實(shí)線之間的陰影中。在圖2中,輪廓從原始輪廓在內(nèi)部和外部各被變粗一個(gè)點(diǎn)。在陰影中的每一個(gè)圓圈是一個(gè)點(diǎn)。
在圖2中,“do”是從原始輪廓到外部實(shí)線的距離,其在本例中是一個(gè)點(diǎn)。在圖2中,“di”是從原始輪廓到內(nèi)部實(shí)線的距離,其在本例中也是一個(gè)點(diǎn)。輪廓字符的較粗的線條寬度示為“W”,而W=do+di+1。
在下文的實(shí)施例中,輪廓寬度指“W”。輪廓的線條寬度也可以用“do”或“di”定義。使用“W”作為輪廓寬度的優(yōu)點(diǎn)是“W”也能夠被應(yīng)用于在稍后敘述的粗化處理中的輪廓寬度的定義。
當(dāng)原始輪廓在內(nèi)部和外部各被變粗一個(gè)點(diǎn)時(shí),“W”變?yōu)榱它c(diǎn)。當(dāng)原始輪廓在內(nèi)部和外部各被變粗0,1,2,3,…,點(diǎn)時(shí),輪廓寬度W變?yōu)閃=1,3,5,7,…?!癢”是一個(gè)正的奇整數(shù)。輪廓寬度以是一個(gè)奇數(shù)為好。如果輪廓寬度是奇數(shù),從原始輪廓到內(nèi)部及外部線條的距離總是能夠被確定。假如輪廓寬度是偶數(shù),確定原始輪廓的內(nèi)部還是外部被變粗可能變得困難。或者,原始輪廓的內(nèi)部或外部被變粗,而一個(gè)異常模樣的字符可能被產(chǎn)生出來(lái)。
當(dāng)W=3點(diǎn)時(shí),按照本實(shí)施例的細(xì)化處理,3點(diǎn)中的2點(diǎn)被刪除。刪除水平地和垂直地都被進(jìn)行了2點(diǎn)×2=4點(diǎn)。
當(dāng)W=1時(shí),在這個(gè)細(xì)化處理中,1點(diǎn)×2=2點(diǎn)被刪除。
實(shí)施例1的硬件結(jié)構(gòu)圖示于圖3。在圖3中,CPU1,顯示單元2a-2c,打印機(jī)3a-3c,傳真機(jī)4a-4d,鍵盤5,鼠標(biāo)6和磁盤驅(qū)動(dòng)器7被示出。
在這個(gè)情況中,作為一個(gè)例子,顯示單元2a具有300dpi的分辨度,顯示單元2b具有600dpi的分辨度,顯示單元2c具有150dpi的分辨度。打印機(jī)3a具有1200dpi的分辨度,打印機(jī)3b具有800dpi的分辨度。傳真機(jī)4a具有600dpi的分辨度,傳真機(jī)4b具有200dpi的分辨度。
圖4是實(shí)施例1的框圖。在圖4中,存儲(chǔ)輪廓字體信息的字體存儲(chǔ)器21和光柵化器24被示出。光柵化器22基于存儲(chǔ)在字體存儲(chǔ)器21中的輪廓字體信息(矢量數(shù)據(jù))產(chǎn)生輪廓字符,并通過光柵化輪廓字符的內(nèi)部生成光柵圖象。在下文中,術(shù)語(yǔ)“光柵化”用來(lái)指把確定字符的輪廓的矢量數(shù)據(jù)轉(zhuǎn)換成由點(diǎn)組成的位象。
輪廓寬度確定器23在輪廓應(yīng)被變粗的情況下,確定輪廓字符的輪廓寬度W。輪廓產(chǎn)生器24基于存儲(chǔ)在字體存儲(chǔ)器21中的輪廓字體信息和由輪廓寬度確定器23確定的輪廓寬度W產(chǎn)生輪廓圖象。
運(yùn)算單元25用被光柵化器22生成的光柵圖象和被輪廓產(chǎn)生器24產(chǎn)生的輪廓圖象進(jìn)行一個(gè)預(yù)先設(shè)定的邏輯運(yùn)算,而生成細(xì)化的光柵圖象。
工作存儲(chǔ)器26被提供。在工作存儲(chǔ)器26中的第一區(qū)域27也被示出。第一區(qū)域27是光柵化器22和運(yùn)算單元25生成的光柵圖象暫時(shí)存儲(chǔ)的區(qū)域。在工作存儲(chǔ)器26中的第二區(qū)域28中,在輪廓產(chǎn)生器24中產(chǎn)生的輪廓圖象被暫時(shí)存儲(chǔ)。
輸出單元29從工作存儲(chǔ)器26中輸出被運(yùn)算單元25處理和生成的光柵圖象。
圖5是在實(shí)施例1的字體處理器中執(zhí)行的細(xì)化處理的流程圖。這個(gè)流程圖從接收顯示字符的字符碼、顯示狀況和在顯示屏幕上的顯示位置的步驟開始。
在步驟S20中,得到字符的顯示狀況和顯示位置。顯示狀況是由用戶確定的顯示尺寸、字型、字符類型、分辨度及值。顯示狀況在步驟S21中確定輪廓寬度時(shí)被使用。
在步驟S21中,輪廓確定器23確定基于由用戶確定的顯示尺寸、字型、字符類型、分辨度及值的輪廓寬度W。
步驟S22—S25相同于在圖42中按照相關(guān)技術(shù)的光柵化方法的流程圖中的步驟S11—S14。在步驟S22—S25中,光柵化器22把輪廓字體的矢量數(shù)據(jù)轉(zhuǎn)換成坐標(biāo)值來(lái)描繪具有顯示尺寸的字符的輪廓。
在步驟S26中,光柵化器22在工作存儲(chǔ)器26的第一區(qū)域27中生成包括輪廓及輪廓內(nèi)部的光柵圖象。如圖1(a)所示,光柵化器22通過把對(duì)應(yīng)于光柵圖象的黑色部分的存儲(chǔ)元置為“ON”,把對(duì)應(yīng)于光柵圖象的白色部分的存儲(chǔ)元置為“OFF”生成光柵圖象。光柵化器22也可以生成不同圖形的光柵圖象,例如剖面圖,陰影圖,等等,或用不同的顏色,例如灰色,來(lái)替代使輪廓外部為白色而使輪廓及輪廓內(nèi)部為黑色。
在步驟S27中,輪廓產(chǎn)生器24在工作存儲(chǔ)器26的第二區(qū)域28中產(chǎn)生輪廓圖象。輪廓產(chǎn)生器24通過把黑色部分置為“ON”而把白色部分置為“OFF”生成輪廓圖象,如圖1(b)所示。
在步驟S28中,運(yùn)算單元25通過對(duì)光柵圖象和輪廓圖象進(jìn)行邏輯運(yùn)算得到細(xì)化的光柵圖象。運(yùn)算單元25在第一區(qū)域中保留一個(gè)部分,這個(gè)部分在第二區(qū)域中是“OFF”而在第一區(qū)域中是“ON”。這個(gè)邏輯運(yùn)算稍后解釋。
在步驟S29中,輸出單元29把在步驟S28中得到的細(xì)化的光柵圖象轉(zhuǎn)換到按照坐標(biāo)值開始繪圖的位置。然后,繪圖開始,過程結(jié)束。
在步驟S22—S26中,光柵化過程被執(zhí)行。輪廓產(chǎn)生過程被執(zhí)行于步驟S27中,運(yùn)算過程被執(zhí)行于步驟S28中。
圖5中流程圖中的每一個(gè)步驟被更詳細(xì)地解釋。在步驟S21中由輪廓寬度確定器確定輪廓寬度W的方法被解釋。
顯示狀況,例如顯示尺寸,分辨度,字型和字符類型被首先解釋。顯示尺寸是顯示(或打印)字符的尺寸。例如,這個(gè)尺寸是6點(diǎn),8點(diǎn),10點(diǎn)…29點(diǎn),44點(diǎn)。較大的點(diǎn)意味著較大的字符尺寸。
當(dāng)字符的顯示尺寸較小時(shí),構(gòu)成字符的線條變?yōu)檩^細(xì)。因此,最好不要使輪廓寬度W更寬。當(dāng)顯示單元的分辨度低時(shí),線條被用較少數(shù)目的點(diǎn)顯示。因此,最好不要使線條寬度W更寬。如前所述,顯示尺寸和分辨度是確定輪廓寬度的主要因素。
對(duì)于字型來(lái)說,有哥特體,明朝體(Ming—cho)、粗體,等等。新的字型也可以由用戶創(chuàng)造。
對(duì)于字符類型來(lái)說,有英文、數(shù)字,片假名,平假名,漢字,符號(hào)和圖形。字符被轉(zhuǎn)換成字符碼,而字符碼被用來(lái)識(shí)別字符類型。例如,字符碼0—9被識(shí)別為數(shù)字。
在圖6中,對(duì)每種顯示尺寸給出對(duì)每種分辨度的輪廓寬度。在圖6中,輪廓寬度基于分辨度和顯示尺寸被確定。例如,當(dāng)具有6點(diǎn)的顯示尺寸的字符被輸出至分辨度低于100dpi的輸出裝置時(shí),輪廓寬度W可以被確定為1點(diǎn)。
在圖7中,對(duì)每種顯示尺寸給出對(duì)每種字型的輪廓寬度。例如,具有8點(diǎn)的顯示尺寸的明朝體(Ming—cho)字符的輪廓寬度可以被確定為1點(diǎn)。
更進(jìn)一步,一個(gè)增加的步驟可以被放置在步驟S21和S22之間。這個(gè)增加的步驟確定細(xì)化處理是否被執(zhí)行。例如,當(dāng)顯示尺寸是6點(diǎn)時(shí),W=0,而假如W=0,細(xì)化處理不被執(zhí)行。
對(duì)于字符類型,示于圖6和7的類似的圖表可以被用來(lái)確定輪廓寬度。
細(xì)化處理被執(zhí)行來(lái)解決由分辨度造成的模糊問題。因此,主要根據(jù)分辨度確定輪廓寬度是有利的。間或,字型和字符類型可以用來(lái)確定輪廓寬度。
輪廓寬度W也可以如下確定。輪廓寬度W在圖6中根據(jù)顯示尺寸和分辨度來(lái)確定。然后,引用如圖8所示的輪廓寬度修正值m,輪廓寬度確定為W+m。輪廓寬度的修正值被選擇為偶數(shù),以便于讓最后的輪廓寬度W+m是奇數(shù)。
例如,在圖6中,當(dāng)顯示尺寸是6點(diǎn)而分辨度是100—200dpi時(shí),得到W=3。然后,當(dāng)字符類型是數(shù)字時(shí),從圖8中得到m=+2點(diǎn)。作為結(jié)果,得到最后的輪廓寬度是W+m=3+2=5點(diǎn)。
示于圖8的類似的表格也是為字型創(chuàng)建出來(lái)用于確定輪廓寬度W的修正值。圖6—8是為全程字符(full stroke character)創(chuàng)造的。對(duì)于半程字符(half stroke character)也創(chuàng)建類似的圖。
修正值最好在不會(huì)產(chǎn)生0或小于0的最后的輪廓寬度的數(shù)字范圍內(nèi)?;蛘撸偃缱詈蟮妮喞獙挾茸?yōu)?或小于0,可能不執(zhí)行細(xì)化處理略去步驟S27和S28。在這樣一個(gè)例子里,在步驟S26后,過程象在按照相關(guān)技術(shù)的光柵化過程中一樣進(jìn)入步驟S29。
輪廓寬度由用戶確定也是可能的。輪廓寬度可以直接用點(diǎn)由用戶賦值?;蛘?,舉例來(lái)說,輪廓寬度可以由用戶從細(xì)度中選擇并賦值,例如1度,2度,3度。當(dāng)用戶給輪廓寬度賦值時(shí),用戶可以檢查這個(gè)被賦值的輪廓寬度是否對(duì)關(guān)系到顯示尺寸和分辨度的過程適用。
在步驟S27中,輪廓產(chǎn)生器24按如下方式工作。
輪廓產(chǎn)生器24產(chǎn)生的輪廓圖象的第一個(gè)例子圖示于圖9。輪廓產(chǎn)生器24在工作存儲(chǔ)器26的第二區(qū)域28中產(chǎn)生輪廓圖象。輪廓產(chǎn)生器24把在黑點(diǎn)中的存儲(chǔ)元置為“ON”,在白點(diǎn)中的存儲(chǔ)元置為“OFF”。在示于圖9的例子中,原始輪廓寬度是1點(diǎn),在原始輪廓之間的空間(光柵圖象的寬度)是7點(diǎn),輪廓寬度W是3點(diǎn)。
在寬度為3點(diǎn)的較粗的輪廓A和B(圖9中的黑點(diǎn))中,上下各2個(gè)點(diǎn),總共4個(gè)點(diǎn)在原始輪廓上或在其內(nèi)部。在步驟S28中,運(yùn)算單元25從光柵化器22生成的原始光柵圖象中排除這4個(gè)點(diǎn)。
在較粗輪廓之間的白點(diǎn)示出應(yīng)該保留在光柵圖象中的細(xì)化的線條。這條細(xì)化的線條的寬度是7點(diǎn)-4點(diǎn)=3點(diǎn)。細(xì)化線條的寬度如下細(xì)化線條寬度=原始輪廓之間的空間-2(1+(W-1)/2)圖10圖示原始輪廓之間的空間是7點(diǎn)而輪廓寬度W是7點(diǎn)的情況。
在這個(gè)例子中,較粗輪廓A和較粗輪廓B相互重疊一個(gè)點(diǎn)。因此,細(xì)化線條部分不存在。為了解決這個(gè)問題,可以確定輪廓寬度W以便留下細(xì)化線條,如以下所述。
輪廓產(chǎn)生器24用上較粗輪廓和下較粗輪廓進(jìn)行異或(EXOR)運(yùn)算。
在圖11(a)中,圖10中的較粗輪廓A用黑點(diǎn)表示。在圖11(b)中,圖10中的較粗輪廓B用黑點(diǎn)表示。在圖11(c)中,顯示了通過(a)和(b)的EXOR運(yùn)算得到的點(diǎn)陣圖形。
在圖11中,為方便起見,為(a),(b)和(c)各繪出一個(gè)點(diǎn)陣縱行。
在圖11(c)中,(a)和(b)的黑點(diǎn)的重疊部分是一個(gè)點(diǎn)的白點(diǎn)。因此,這條在原始輪廓之間的寬度是1點(diǎn)的線條留存為細(xì)化線條。
如上述,當(dāng)產(chǎn)生輪廓圖象時(shí),由于EXOR運(yùn)算的細(xì)化處理,1個(gè)點(diǎn)能夠留存下來(lái)。因此,構(gòu)成字符的線條不消失。除EXOR運(yùn)算外,也能夠使用把A或B是“ON”的區(qū)域置為“ON”的處理方法。
在步驟S28中,運(yùn)算單元按如下方式工作。
圖1(a)中的光柵圖象由光柵化器在工作存儲(chǔ)器26的第一區(qū)域27中生成。圖1(b)中的輪廓圖象在工作存儲(chǔ)器26的第二區(qū)域28中產(chǎn)生。
每一個(gè)圖象在工作存儲(chǔ)器的各自區(qū)域中產(chǎn)生位象。對(duì)應(yīng)于位圖中的每一點(diǎn)的每一個(gè)存儲(chǔ)元被置為“OFF”(白色部分)或“ON”(黑色部分),產(chǎn)生每一個(gè)圖象。
然后,運(yùn)算單元25在第一區(qū)域27中的第一區(qū)域27是“ON”(在圖1中的黑色)且第二區(qū)域28是“OFF”(在圖1中的白色)之處留下點(diǎn)。用這種方法,細(xì)化的光柵圖象在第一區(qū)域27中被生成,如圖1(c)所示。
在圖12(a)中,光柵圖象的一部分被放大為點(diǎn)陣圖形。在圖12(b)中,輪廓圖象的一部分被放大并顯示為點(diǎn)陣圖形。在圖12(c)中,細(xì)化的光柵圖象的一部分被放大并顯示為點(diǎn)陣圖形。在圖12中,在第一區(qū)域中的是“ON”(黑色)或“OFF”(白色)的數(shù)據(jù)是X。在第二區(qū)域中的是“ON”(黑色)或“OFF”(白色)的數(shù)據(jù)是Y。
在圖12(c)中,細(xì)化的光柵圖象通過保留在其處第二區(qū)域28是“OFF”且第一區(qū)域27是“ON”的第一區(qū)域27的一部分被生成。這個(gè)過程相同于X和Y的反轉(zhuǎn)值的邏輯與運(yùn)算。這個(gè)運(yùn)算可以用另一個(gè)運(yùn)算代替。作為運(yùn)算的結(jié)果,從原始圖象上下各細(xì)2點(diǎn)的光柵圖象被生成。
在實(shí)施例1中,解釋按照細(xì)化方法的字體處理器。字體處理器從輪廓字體生成光柵圖象(用“ON”和“OFF”兩個(gè)值寫的值是X)。這個(gè)光柵圖象相同于按照相關(guān)技術(shù)生成的光柵圖象。
然后,基于分辨度、顯示尺寸、字符類型,等等確定輪廓寬度。用于光柵圖象的輪廓被變粗來(lái)產(chǎn)生輪廓圖象(用“ON”和“OFF”兩個(gè)值寫的值是Y)。
最后,執(zhí)行X和Y的反轉(zhuǎn)值的邏輯與運(yùn)算來(lái)生成細(xì)化的光柵圖象。
實(shí)施例2在實(shí)施例2中,解釋能夠執(zhí)行細(xì)化處理及粗化處理的一個(gè)字體處理器。因?yàn)榧?xì)化處理按照與實(shí)施例1中相同的方法執(zhí)行,在實(shí)施例2中略去對(duì)細(xì)化的解釋。
圖13是實(shí)施例2的字體處理器的框圖。運(yùn)算單元25 a執(zhí)行細(xì)化處理及粗化處理。判斷單元42判斷細(xì)化處理還是粗化處理。對(duì)細(xì)化處理還是粗化處理被執(zhí)行的判斷是基于分辨度或由用戶決定的一些其它因素做出。
粗化處理的原理示于圖14。光柵化器22在第一區(qū)域中生成光柵圖象,如圖14(a)所示。輪廓產(chǎn)生器24在第二區(qū)域中產(chǎn)生輪廓圖象,如圖14(b)所示。輪廓圖象的輪廓寬度由輪廓寬度確定器23確定。直到此處,這個(gè)過程相同于已在實(shí)施例1中解釋的細(xì)化處理過程。
在這之后,運(yùn)算單元25a在第一區(qū)域把在第二區(qū)域中是黑色且在第一區(qū)域中是白色的點(diǎn)置為黑色。在第一區(qū)域中已經(jīng)是黑色的點(diǎn)保留為黑點(diǎn)。作為結(jié)果,較粗的光柵圖象被生成,如圖14(c)所示。
在圖15中,光柵圖象,輪廓圖象和較粗光柵圖象的各一部分被放大并顯示為點(diǎn)陣圖形。在圖15中,在第一區(qū)域中用“ON”(黑色)或“OFF”(白色)寫的數(shù)據(jù)是X。在第二區(qū)域中用“ON”(黑色)或“OFF”(白色)寫的數(shù)據(jù)是Y。在圖15(c)中,較粗的光柵圖象通過在第一區(qū)域中把在第一區(qū)域或第二區(qū)域中是“ON”的點(diǎn)置為“ON”被生成。更進(jìn)一步,X和Y的邏輯或運(yùn)算可以被進(jìn)行,例如來(lái)生成較粗的光柵圖象。
當(dāng)輪廓寬度W=3時(shí),較粗的光柵圖象在上下左右各比原始光柵圖象粗一個(gè)點(diǎn)。因此,它總共要粗1點(diǎn)×2=2點(diǎn)。
圖16是實(shí)施例2中細(xì)化和粗化處理的流程圖。在步驟S30中,得到顯示狀況和顯示位置。顯示狀況是顯示尺寸、字型、字符類型、分辨度等等,和在實(shí)施例1中相同。在這同時(shí),確定細(xì)化處理或者粗化處理。
在步驟S30—S37中,基于得到的狀況確定輪廓寬度,光柵圖象,然后產(chǎn)生輪廓圖象。這些步驟相同于實(shí)施例1中圖5的步驟S20—S27。因此,在實(shí)施例2中略去對(duì)此的解釋。
在步驟S38中,判斷單元42按照用戶的要求判斷細(xì)化處理還是粗化處理要被執(zhí)行。在步驟S38中,判斷可以基于分辨度做出。在細(xì)化的情況下,運(yùn)算單元25a按照與圖5中步驟S28相同的運(yùn)算執(zhí)行細(xì)化處理。光柵圖象的用“ON”和“OFF”兩個(gè)值寫的數(shù)據(jù)是X。輪廓圖象的用“ON”和“OFF”兩個(gè)值寫的數(shù)據(jù)是Y。例如,細(xì)化的邏輯運(yùn)算是X和反轉(zhuǎn)的Y的邏輯或。
在步驟S38中,假如判斷粗化處理應(yīng)被執(zhí)行,粗化處理在步驟S40中被執(zhí)行。在步驟S40中,為粗化處理進(jìn)行光柵圖象X和輪廓圖象Y的邏輯或運(yùn)算。
在步驟S41中,輸出單元29把生成的光柵圖象的一個(gè)坐標(biāo)值轉(zhuǎn)換到開始繪圖的位置,然后開始繪圖。
這是能夠執(zhí)行細(xì)化處理及粗化處理的字體處理器的處理流程。
在實(shí)施例2中,解釋能夠執(zhí)行細(xì)化處理及粗化處理的字體處理器。細(xì)化處理過程與實(shí)施例1中的過程相同。實(shí)施例2中的粗化處理的特征是粗化處理通過進(jìn)行光柵圖象和輪廓圖象的邏輯或運(yùn)算來(lái)完成。
實(shí)施例3。
在實(shí)施例3中,解釋能夠執(zhí)行細(xì)化處理及粗化處理的一個(gè)字體處理器。實(shí)施例3中的粗化處理過程不同于實(shí)施例2中的過程。
圖17是實(shí)施例3的字體處理器的框圖。對(duì)于圖17,判斷單元42和粗線條產(chǎn)生器40被增加到實(shí)施例1中圖4的框圖中。粗線條產(chǎn)生器40光柵化由輪廓產(chǎn)生器24產(chǎn)生的輪廓圖象的內(nèi)部,生成較粗的光柵圖象。
細(xì)化處理過程相同于實(shí)施例2中的過程。因此,略去細(xì)化處理過程的解釋。
粗化原理解釋于圖18。輪廓產(chǎn)生器24在第二區(qū)域28中產(chǎn)生輪廓圖象,如圖18(a)所示。輪廓圖象的輪廓寬度是由輪廓寬度確定器23確定的值。輪廓產(chǎn)生器24把對(duì)應(yīng)于黑色部分的存儲(chǔ)元置為“ON”,把對(duì)應(yīng)于白色部分的存儲(chǔ)元置為“OFF”來(lái)產(chǎn)生輪廓圖象。輪廓產(chǎn)生器24的操作與實(shí)施例2中相同。
粗線條產(chǎn)生器40通過把輪廓圖象的較粗輪廓的內(nèi)部置為“ON”生成較粗的光柵圖象,如圖18(b)所示。
在圖19中,輪廓圖象和較粗的光柵圖象被放大并示為點(diǎn)陣圖形。示于圖19(a)的輪廓圖象相同于實(shí)施例2中的輪廓圖象。粗線條產(chǎn)生器40把對(duì)應(yīng)于在較粗的輪廓之間的點(diǎn)的存儲(chǔ)元置為“ON”,生成示于圖19(b)的較粗的光柵圖象。
圖20是實(shí)施例3的流程圖。圖20與圖16的不同之處在于圖20的步驟S60和圖16的步驟S40。在圖20的步驟S60中,粗線條產(chǎn)生器40通過把輪廓圖象的內(nèi)部置為“ON”生成較粗的光柵圖象。除此外,其它步驟相同。因此,解釋被略去。
如前所述,實(shí)施例3涉及能夠執(zhí)行細(xì)化處理及粗化處理的字體處理器。這個(gè)細(xì)化處理過程相同于實(shí)施例1中的過程。這個(gè)粗化處理的特征是由粗線條產(chǎn)生器40把輪廓圖象的內(nèi)部置為“ON”。
實(shí)施例4。
在實(shí)施例4中,把較細(xì)或較粗的光柵圖象存儲(chǔ)在高速緩沖存儲(chǔ)器中以便加速字體顯示處理時(shí)間的一個(gè)過程被解釋。
圖21是實(shí)施例4的字體處理器的框圖。在圖21中,字體高速緩沖存儲(chǔ)器56,請(qǐng)求單元41和粗線條產(chǎn)生器40被加到實(shí)施例1的圖4中。字體高速緩沖存儲(chǔ)器56是存儲(chǔ)光柵化的光柵圖象的高速緩沖存儲(chǔ)器。請(qǐng)求單元41把光柵圖象存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,并判斷顯示字符是否被存儲(chǔ)在字體高速緩沖存儲(chǔ)器中,假如字符被存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,請(qǐng)求單元從字體高速緩沖存儲(chǔ)器56中讀出光柵圖象,并顯示這個(gè)光柵圖象。
圖22是字體顯示的流程圖。在圖22中,按照窗口系統(tǒng)的顯示單元被使用。在圖22中,輪廓字體文件53,磁盤高速緩沖存儲(chǔ)器(在系統(tǒng)內(nèi))54,和存儲(chǔ)矢量數(shù)據(jù)的輪廓字體高速緩沖存儲(chǔ)器55被示出。輪廓字體高速緩沖存儲(chǔ)器55是存儲(chǔ)輪廓字體的矢量數(shù)據(jù)的專用高速緩沖存儲(chǔ)器。字體高速緩沖存儲(chǔ)器56存儲(chǔ)光柵圖象。字體高速緩沖存儲(chǔ)器56是存儲(chǔ)從輪廓字體生成的光柵化的光柵圖象的高速緩沖存儲(chǔ)器。這個(gè)光柵圖象可以是細(xì)化的光柵圖象或者粗化的光柵圖象。這個(gè)光柵圖象也可以是按照相關(guān)技術(shù)生成的光柵圖象。在圖22中,頁(yè)面緩沖存儲(chǔ)裝置57也被示出。頁(yè)面緩沖存儲(chǔ)裝置57是把數(shù)據(jù)存儲(chǔ)在窗口的顯示屏幕上的存儲(chǔ)器。
頁(yè)面顯示過程如下
打開輪廓字體文件53的預(yù)備過程被執(zhí)行。然后,進(jìn)行頁(yè)面幀擴(kuò)展。頁(yè)面幀擴(kuò)展是在頁(yè)面緩沖存儲(chǔ)裝置中生成輸出信息的過程。例如,當(dāng)應(yīng)被顯示在窗口屏幕上的字符的輪廓字體被光柵化時(shí),光柵化的信息被存儲(chǔ)在頁(yè)面緩沖存儲(chǔ)裝置中。假如輪廓字體的矢量數(shù)據(jù)在輪廓字體高速緩沖存儲(chǔ)器55中,就從輪廓字體高速緩沖存儲(chǔ)器55中讀出。假如輪廓字體的矢量數(shù)據(jù)未被存儲(chǔ)在輪廓字體高速緩沖存儲(chǔ)器55中,就在磁盤高速緩沖存儲(chǔ)器54中尋找這個(gè)數(shù)據(jù)。假如這個(gè)數(shù)據(jù)在磁盤高速緩沖存儲(chǔ)器54中,這個(gè)數(shù)據(jù)就從磁盤高速緩沖存儲(chǔ)器54中讀出。假如這個(gè)數(shù)據(jù)也不在磁盤高速緩沖存儲(chǔ)器54中,這個(gè)數(shù)據(jù)就從輪廓字體文件53中讀出。在這個(gè)數(shù)據(jù)被讀出后,執(zhí)行輪廓字體的光柵化過程。這個(gè)光柵化過程可以是細(xì)化處理、粗化處理和在相關(guān)技術(shù)中被敘述的處理中的一種。光柵化的光柵圖象被存儲(chǔ)在頁(yè)面緩沖存儲(chǔ)裝置57中。當(dāng)窗口屏幕的頁(yè)面幀擴(kuò)展結(jié)束時(shí),假如需要,頁(yè)面緩沖存儲(chǔ)器57被復(fù)制到窗口屏幕上,過程結(jié)束。
至此,已解釋在字體高速緩沖存儲(chǔ)器56不在系統(tǒng)內(nèi)的情況下的過程。假如字體高速緩沖存儲(chǔ)器56在系統(tǒng)內(nèi),首先,請(qǐng)求單元41檢查光柵化字符的光柵圖象是否在字體高速緩沖存儲(chǔ)器56中。假如這個(gè)光柵圖象在字體高速緩沖存儲(chǔ)器56中被發(fā)現(xiàn),這個(gè)圖象被從字體高速緩沖存儲(chǔ)器56中讀出,并被存儲(chǔ)在頁(yè)面緩沖存儲(chǔ)裝置57中。假如這個(gè)光柵圖象未被存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,請(qǐng)求單元41光柵化輪廓字體,并在字體高速緩沖存儲(chǔ)器56中生成輪廓字體的光柵圖象。
圖23是使用高速緩沖存儲(chǔ)器的流程圖。在步驟S160中,得到顯示狀況和顯示位置。步驟S160相同于實(shí)施例1中圖5的步驟S20。在步驟S161中,按照顯示狀況,例如字型、字符類型、分辨度、顯示尺寸,等等,判斷光柵圖象是否在字體高速緩沖存儲(chǔ)器56中。假如光柵圖象在字體高速緩沖存儲(chǔ)器56中,光柵圖象在步驟S164中被讀出,過程結(jié)束。在步驟S161中,判斷光柵化的圖象是否在字體高速緩沖存儲(chǔ)器56中。假如它不在字體高速緩沖存儲(chǔ)器56中,就執(zhí)行光柵化處理在步驟S162中。光柵化處理是細(xì)化處理,粗化處理和在相關(guān)技術(shù)中被敘述的處理中的一種。在步驟S163中,在步驟S162中被光柵化的光柵圖象被寫在字體高速緩沖存儲(chǔ)器56中,過程結(jié)束。
在實(shí)施例4中,解釋了具有請(qǐng)求單元來(lái)使用高速緩沖存儲(chǔ)器的字體處理器。由于高速緩沖存儲(chǔ)器的使用,字體處理能夠高速執(zhí)行。
實(shí)施例5。
在實(shí)施例5中,執(zhí)行細(xì)化處理及粗化處理的實(shí)施例4的字體處理器通過不用修改的按照相關(guān)技術(shù)的標(biāo)準(zhǔn)光柵化過程來(lái)實(shí)現(xiàn)。圖示于圖24。在下文中,按照相關(guān)技術(shù)被光柵化的字符的線條寬度被稱為標(biāo)準(zhǔn)寬度。
圖25是實(shí)施例5的字體處理器的框圖。判斷單元42判斷在細(xì)化處理、粗化處理和標(biāo)準(zhǔn)處理中哪種處理應(yīng)被執(zhí)行。按照相關(guān)技術(shù)的光柵化器43也被示于圖25中。組成這個(gè)框圖的其它單元與圖21中的相同。
圖26是實(shí)施例5的流程圖。
在步驟S70中,得到顯示狀況和顯示位置。在步驟S71中,判斷單元42判斷細(xì)化處理或粗化處理是否應(yīng)被執(zhí)行來(lái)優(yōu)化處理。在判斷細(xì)化處理或粗化處理應(yīng)被執(zhí)行后,過程進(jìn)入步驟S72。在步驟S72中,請(qǐng)求單元41檢查匹配的光柵圖象是否存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中。假如這個(gè)光柵被存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程進(jìn)入步驟S75。在步驟S75中,請(qǐng)求單元41從字體高速緩沖存儲(chǔ)器56中讀出光柵圖象,過程結(jié)束。
假如在步驟S72中判斷匹配的光柵圖象未被存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程進(jìn)入步驟S73。在步驟S73中,細(xì)化處理或粗化處理被執(zhí)行。在這個(gè)步驟中的細(xì)化處理或粗化處理可以是在本說明中被敘述的任何細(xì)化和粗化方法。在步驟S74中,請(qǐng)求單元41把細(xì)化的或粗化的光柵圖象存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程結(jié)束。
假如在步驟S71中判斷不執(zhí)行細(xì)化或粗化,過程進(jìn)入步驟S76。在步驟S76中,請(qǐng)求單元41判斷匹配的光柵圖象是否存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中。假如這個(gè)光柵圖象在字體高速緩沖存儲(chǔ)器56中,過程進(jìn)入步驟S75。在步驟S75中,請(qǐng)求單元41從字體高速緩沖存儲(chǔ)器56中讀出這個(gè)光柵圖象,過程結(jié)束。
假如匹配的光柵圖象未存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程進(jìn)入步驟S71,按照相關(guān)技術(shù)的光柵化過程被執(zhí)行。在步驟S78中,請(qǐng)求單元41把光柵化的光柵圖象存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程結(jié)束。這是在實(shí)施例5中的處理的流程。
例如,判斷單元也可以按照輸出字符的輸出裝置的分辨度進(jìn)行判斷。在實(shí)施例5中,假如裝置的分辨度低于300dpi,細(xì)化處理應(yīng)執(zhí)行。假如分辨度高于1000dpi,則粗化處理應(yīng)執(zhí)行。這被示于圖27。按照示于圖3中的硬件結(jié)構(gòu),假如字符被輸出至分辨度低于300dpi的輸出裝置,例如顯示單元2c和傳真機(jī)4b,細(xì)化處理可以被執(zhí)行。假如字符被輸出至分辨度高于1000dpi的輸出裝置,例如打印機(jī)3a,粗化處理可以被執(zhí)行。假如字符被輸出至具有其它分辨度的輸出裝置,按照相關(guān)技術(shù)的光柵化可以被執(zhí)行。
除分辨度外,判斷單元可以基于其它指標(biāo)做出判斷。用戶指定哪種處理被執(zhí)行也是可能的。例如,用戶指定打印機(jī)3a執(zhí)行粗化處理而打印機(jī)3b執(zhí)行標(biāo)準(zhǔn)處理。更進(jìn)一步,當(dāng)一個(gè)顯示單元被使用時(shí),例如標(biāo)準(zhǔn)模式,銀(Silver)模式,年輕(young)模式,等等的模式可以被提供。在銀(Silver)模式中,字符被放大和輕微地粗化。在年輕(young)模式中,字符在尺寸上被減小并輕微地細(xì)化。當(dāng)用戶使用這個(gè)顯示單元時(shí),假如用戶選擇銀(Silver)模式,粗化處理被執(zhí)行。假如用戶選擇年輕(young)模式,也可以確定細(xì)化處理被執(zhí)行。
在實(shí)施例5中,解釋了具有判斷單元的字體處理器。判斷單元判斷在按照相關(guān)技術(shù)的光柵化,細(xì)化處理和粗化處理中的哪種處理應(yīng)被執(zhí)行。在這個(gè)方法中,按照相關(guān)技術(shù)的光柵圖象能夠被利用,而且這個(gè)光柵圖象也能夠用于細(xì)化處理及粗化處理。
實(shí)施例6實(shí)施例6涉及對(duì)在細(xì)化處理,粗化處理和具有標(biāo)準(zhǔn)寬度的處理中哪種處理應(yīng)被執(zhí)行做出判斷并執(zhí)行每種處理的一個(gè)字體處理器。
在實(shí)施例5中,按照相關(guān)技術(shù)生成的光柵圖象被用于標(biāo)準(zhǔn)處理。然而,在實(shí)施例6中,字體處理器在執(zhí)行細(xì)化處理、粗化處理和標(biāo)準(zhǔn)處理中并不參照按照相關(guān)技術(shù)的光柵圖象。
在實(shí)施例6中的字體處理器的框圖相同于圖25中實(shí)施例5的框圖。
圖28給出在實(shí)施例6中字體處理器的處理流程。在字體處理器中,對(duì)細(xì)化處理、粗化處理和標(biāo)準(zhǔn)處理的進(jìn)行判斷,例如,基于分辨度或一些其它由用戶預(yù)定的指標(biāo)。在實(shí)施例6中,判斷可以被基于分辨度做出,如圖27所示。在步驟S80中,得到顯示狀況和顯示位置。在步驟S81中,請(qǐng)求單元41判斷光柵化的圖象是否已經(jīng)存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中。假如圖象存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程進(jìn)入步驟S92,在步驟S92中,圖象從字體高速緩沖存儲(chǔ)器中讀出,過程結(jié)束。
在步驟S81中,假如圖象未存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程進(jìn)入步驟S82。在步驟S82中,輪廓字體數(shù)據(jù)被轉(zhuǎn)換成坐標(biāo)值來(lái)描繪輪廓。在步驟S82中,圖5中的步驟包含S22—S25。在步驟S83中,生成包括輪廓和輪廓內(nèi)部的光柵圖象。
在步驟S84中,判斷單元42判斷細(xì)化處理或粗化處理是否應(yīng)被執(zhí)行。假如輸出字符的裝置的分辨度,例如,高于300dpi并低于1000dpi,判斷是“否”?!胺瘛币馕吨鴺?biāo)準(zhǔn)寬度被選擇。然后,過程進(jìn)入步驟S90。在步驟S90中,在步驟S83中被生成的光柵圖象的坐標(biāo)值被轉(zhuǎn)換到開始繪圖的位置,繪圖開始。在步驟S91中,請(qǐng)求單元41把生成的光柵圖象存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程結(jié)束。
在步驟S84中,例如,假如分辨度低于300dpi或高于1000dpi,對(duì)細(xì)化或粗化的判斷是“是”。然后,過程進(jìn)入步驟S85。在步驟S85中,輪廓產(chǎn)生器24產(chǎn)生輪廓圖象。在步驟S86中,輪廓寬度確定器23按照在步驟S80中輸入的字符狀況確定輪廓寬度。這個(gè)過程相同于圖5中的步驟S21。
在步驟S87中,判斷單元42判斷細(xì)化和粗化中的哪一個(gè)是需要的。例如,假如分辨度高于1000dpi,判斷是“否”,粗化處理在步驟S88中被執(zhí)行。然后,在步驟S90中,粗化的光柵圖象的坐標(biāo)值被轉(zhuǎn)換到開始繪圖的位置。在步驟S91中,光柵圖象被存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程結(jié)束。
在步驟S87中,例如,假如分辨度低于300dpi,對(duì)細(xì)化的判斷是“是”,過程進(jìn)入步驟S89。在步驟S89中,細(xì)化處理被執(zhí)行,過程進(jìn)入步驟S90。在步驟S90中,細(xì)化的光柵圖象的坐標(biāo)值被轉(zhuǎn)換到開始繪圖的位置,繪圖開始。在步驟S91中,光柵圖象被存儲(chǔ)在字體高速緩沖存儲(chǔ)器56中,過程結(jié)束。
這個(gè)細(xì)化或粗化的方法可以是在本說明被敘述的任何方法。這是按照實(shí)施例6的字體處理器的處理的流程。
在實(shí)施例6中,字體處理器聯(lián)合執(zhí)行字符的細(xì)化處理,粗化處理和具有標(biāo)準(zhǔn)線條寬度的處理。
實(shí)施例7在實(shí)施例6中,判斷單元判斷在細(xì)化處理,粗化處理和標(biāo)準(zhǔn)處理中哪一個(gè)是合適的。對(duì)兩種處理,例如細(xì)化處理和粗化處理中做出判斷也是可能的。判斷單元也可以從具有不同寬度,例如很細(xì),中等細(xì),細(xì),標(biāo)準(zhǔn),粗和很粗的許多種處理中判斷。
實(shí)施例8在實(shí)施例8中,解釋細(xì)化處理的另一種方法。
圖29是實(shí)施例8的字體處理器的框圖。在圖29中,在圖4中的光柵化器22被粗線條產(chǎn)生器40替代。粗線條產(chǎn)生器40生成包括由輪廓產(chǎn)生器產(chǎn)生的輪廓圖象和輪廓圖象的內(nèi)部的光柵圖象。作為對(duì)在實(shí)施例7中的輪廓產(chǎn)生器24的功能的增加,輪廓產(chǎn)生器24a具有一個(gè)功能來(lái)裝入輪廓字體信息,并形成坐標(biāo)值來(lái)繪出具有基于輪廓字體的矢量數(shù)據(jù)的顯示尺寸的輪廓。
在圖30中,細(xì)化處理的原理相對(duì)于實(shí)施例8加以解釋。在圖30中,(a)給出包括輪廓圖象及輪廓圖象的內(nèi)部的光柵圖象。在圖30中,(b)給出輪廓圖象。輪廓產(chǎn)生器24a在工作存儲(chǔ)器26中的第一區(qū)域27和第二區(qū)域28中產(chǎn)生輪廓圖象。輪廓產(chǎn)生器24a把圖30(b)中的輪廓圖象的黑色部分置為“ON”,并把圖30(b)中的輪廓圖象的白色部分置為“OFF”。粗線條產(chǎn)生器40把第一區(qū)域的輪廓圖象的內(nèi)部置為“ON”。按這種方法,示于圖30(a)的光柵圖象被生成。
運(yùn)算單元25試圖保留在第二區(qū)域中是白色并且在第一區(qū)域中是黑色的一個(gè)部分。然后,示于圖30(c)的光柵圖象被生成。
在圖31中,包括輪廓圖象及輪廓圖象的內(nèi)部的光柵圖象,輪廓圖象和細(xì)化的光柵圖象的各一個(gè)部分被放大并示為點(diǎn)陣圖形。
在圖31中,在白色部分被用“OFF”的值描述且黑色部分被用“ON”的值描述時(shí),在圖31(a)中的光柵圖象是X而在圖31(b)中的輪廓圖象是Y。例如,在圖31(c)中的細(xì)化的光柵圖象通過X和反轉(zhuǎn)的Y的邏輯與被生成。
在圖32中,給出在實(shí)施例8中的細(xì)化處理的流程。在圖32中的步驟S100—S105相同于在圖5中的步驟S20—S25。在圖32中的步驟S102—S106被輪廓產(chǎn)生器24a執(zhí)行。在步驟S106中,輪廓產(chǎn)生器24a產(chǎn)生輪廓圖象。在步驟S107中,粗線條產(chǎn)生器40產(chǎn)生包括輪廓圖象及輪廓圖象的內(nèi)部的光柵圖象。在步驟S108中,運(yùn)算單元25通過光柵圖象和輪廓圖象的一個(gè)邏輯運(yùn)算執(zhí)行細(xì)化處理。在這個(gè)邏輯運(yùn)算中,X和Y被使用。例如,細(xì)化處理通過X和反轉(zhuǎn)的Y的邏輯與被執(zhí)行。在步驟S109中,輸出單元29把細(xì)化的光柵圖象的坐標(biāo)值轉(zhuǎn)換到開始繪圖的位置,并開始繪圖。然后這個(gè)過程結(jié)束。這是實(shí)施例8的細(xì)化處理的流程。
在圖32中,步驟S102—S106是產(chǎn)生輪廓的過程。步驟S107是粗線條產(chǎn)生過程,步驟S108是運(yùn)算過程。
在實(shí)施例8的字體處理器中,包括輪廓圖象及光柵圖象的內(nèi)部的光柵圖象被生成,細(xì)化的光柵圖象通過從光柵圖象中排除輪廓圖象被生成。粗線條產(chǎn)生器40也可以從輪廓圖象用不同的圖形或顏色光柵化輪廓圖象的內(nèi)部。
實(shí)施例9在實(shí)施例9中,解釋細(xì)化處理的另一種方法。
圖33是實(shí)施例9的字體處理器的框圖。在圖33中,專用圖象產(chǎn)生器(exclusive image produce r)60產(chǎn)生包括被輪廓產(chǎn)生器24a產(chǎn)生的輪廓圖象及輪廓圖象的外部的圖象。在實(shí)施例9中,光柵生成器61通過反轉(zhuǎn)被專用圖象產(chǎn)生器生成的圖象的“ON”和“OFF”來(lái)生成細(xì)化的光柵圖象。
在圖34中,顯示了實(shí)施例9的細(xì)化處理的原理。在圖34(a)中,示出了輪廓圖象。輪廓產(chǎn)生器24a在工作存儲(chǔ)器26的第一區(qū)域27中產(chǎn)生輪廓圖象。輪廓圖象是通過把黑色部分置為“ON”并把白色部分置為“OFF”而生成。專用圖象產(chǎn)生器60通過在第一區(qū)域27中把輪廓圖象及這個(gè)圖象的外部置為“ON”產(chǎn)生在圖34(b)中的專有圖象(exclusive imgae)。光柵生成器61反轉(zhuǎn)產(chǎn)生的專有圖象的“ON”和“OFF”,生成如圖34(c)所示的細(xì)化的光柵圖象。在圖35中,示于圖34的每個(gè)圖象被放大并示為點(diǎn)陣圖象。在圖35中,(a)是輪廓圖象。在圖35中,(b)是包括輪廓圖象和輪廓的外部的專有圖象。在圖35中,(c)是通過反轉(zhuǎn)在圖35(b)中的白色點(diǎn)陣圖形和黑色點(diǎn)陣圖形生成的細(xì)化的光柵圖象。
圖36是實(shí)施例9的細(xì)化處理的流程圖。在步驟S120—S126中,得到字符的狀況和顯示位置,輪廓寬度被確定,輪廓圖象按照輪廓字體產(chǎn)生。在圖36中的步驟S120—S126相同于在圖32中的步驟S100—S106。在步驟S127中,專用圖象產(chǎn)生器60通過把包括輪廓圖象及這個(gè)輪廓的外部的圖象置為“ON”產(chǎn)生專有圖象。光柵生成器61通過反轉(zhuǎn)專有圖象的“ON”和“OFF”生成細(xì)化的光柵圖象。在步驟S129中,細(xì)化的光柵圖象的坐標(biāo)值被轉(zhuǎn)換到開始繪圖的位置,繪圖被開始。
步驟S122—S126是產(chǎn)生輪廓的過程。步驟S127是產(chǎn)生專有圖象的過程。步驟S128是通過反轉(zhuǎn)專有圖象的“ON”和“OFF”光柵化細(xì)化的光柵圖象的過程。
在實(shí)施例9中,解釋細(xì)化處理的另一種方法。
實(shí)施例9的字體處理器的特點(diǎn)在于具有以下的特有的單元(a)存儲(chǔ)輪廓字體的字體存儲(chǔ)器;(b)確定按照輪廓字體產(chǎn)生的輪廓的輪廓寬度的輪廓寬度確定器;
(c)基于按照輪廓字體產(chǎn)生的輪廓和被輪廓寬度確定器確定的輪廓寬度產(chǎn)生輪廓圖象的輪廓產(chǎn)生器;(d)產(chǎn)生包括被輪廓產(chǎn)生器產(chǎn)生的輪廓圖象及輪廓圖象的外部的圖象的專用圖象產(chǎn)生器;(e)通過反轉(zhuǎn)由專用圖象產(chǎn)生器產(chǎn)生并被用“ON”和“OFF”兩個(gè)值的數(shù)據(jù)描寫的圖象的“ON”和“OFF”來(lái)生成光柵圖象的光柵生成器,及(f)輸出由光柵生成器生成的光柵圖象的輸出單元。
實(shí)施例10在實(shí)施例10中,解釋細(xì)化處理的第三種方法。
圖37是實(shí)施例10的字體處理器的框圖。在圖37中,輪廓產(chǎn)生器24a和專用圖象產(chǎn)生器60在第二區(qū)域28中產(chǎn)生圖象。在圖37中的其它單元相同于在實(shí)施例9的圖33中的單元。
實(shí)施例10的原理示于圖38。在圖38中,輪廓產(chǎn)生器24a在工作存儲(chǔ)器26的第二區(qū)域28中產(chǎn)生輪廓圖象。
專用圖象產(chǎn)生器60產(chǎn)生包括由輪廓產(chǎn)生器24a產(chǎn)生的輪廓圖象及輪廓圖象的外部的專有圖象。專用圖象產(chǎn)生器60把包括輪廓圖象及輪廓圖象的外部的區(qū)域置為“ON”,并在第二區(qū)域28中產(chǎn)生示于圖38(b)的專有圖象。
光柵生成器61在第一區(qū)域27中指定稍大于字符尺寸的一個(gè)區(qū)域,并把這個(gè)區(qū)域的內(nèi)部置為“ON”。在圖38(c)中,這被示為黑色。然后,光柵生成器61把在第二區(qū)域中的專有圖象中是“ON”且在字符被描繪于其中的第一區(qū)域中是“ON”的區(qū)域置為“OFF”。光柵生成器61也把在第二區(qū)域中的專有圖象中是“OFF”且在字符被描繪于其中的第一區(qū)域中是“ON”的區(qū)域置為“ON”。按這種方法,細(xì)化的光柵圖象被生成。
在圖38中,在如圖38(b)所示的專有圖象中是黑色且在圖38(c)中的字符被描繪于其中的區(qū)域中是黑色的區(qū)域被置為白色。在圖38(b)中是白色且在圖38(c)中是黑色的區(qū)域被置為黑色。按這種方法,細(xì)化的光柵圖象被生成,如圖38(d)所示。在圖39中,在圖38中的每一個(gè)圖象被放大并示為點(diǎn)陣圖象。
圖40是實(shí)施例10的細(xì)化處理的流程圖。
在圖40中的步驟S130—S137相同于在圖36中的步驟S120—S127。在步驟S137中,產(chǎn)生專有圖象。在步驟S138中,光柵生成器61把在其中字符將被產(chǎn)生的區(qū)域置為“ON”。在步驟S139中,例如,光柵生成器61通過進(jìn)行字符在其中被產(chǎn)生的區(qū)域和專有圖象的異或運(yùn)算生成細(xì)化的光柵圖象。步驟S138和S139是光柵化過程,這是在實(shí)施例10中的細(xì)化處理的特有的過程。
在實(shí)施例10中,解釋了細(xì)化處理的第三種方法。
實(shí)施例10的字體處理器的特點(diǎn)在于具有以下的特有的單元(a)存儲(chǔ)輪廓字體的字體存儲(chǔ)器21,(b)確定按照輪廓字體產(chǎn)生的輪廓的輪廓寬度的輪廓寬度確定器,(c)基于按照輪廓字體產(chǎn)生的輪廓和由輪廓寬度確定器確定的輪廓寬度產(chǎn)生輪廓圖象的輪廓產(chǎn)生器,(d)產(chǎn)生包括由輪廓產(chǎn)生器產(chǎn)生的輪廓圖象和輪廓圖象的外部的圖象的專用圖象產(chǎn)生器,
(e)預(yù)先確定圖象被顯示在被指定來(lái)生成圖象的區(qū)域中并預(yù)先確定被圖象產(chǎn)生器產(chǎn)生的專有圖象不被顯示的光柵生成器,及(f)輸出被光柵生成器生成的光柵圖象的輸出單元。
實(shí)施例11在實(shí)施例11中,解釋細(xì)化處理的第四種方法。
實(shí)施例11的框圖相同于圖33。實(shí)施例11的原理被示于圖41。光柵生成器61在第一區(qū)域27中指定稍大于字符尺寸的一個(gè)區(qū)域,并把這個(gè)區(qū)域的內(nèi)部置為“ON”。這個(gè)區(qū)域被稱為字符在其中被描繪的區(qū)域。在圖41(a)中,這個(gè)區(qū)域被示為黑色。
然后,輪廓產(chǎn)生器24a在第一區(qū)域27中的字符在其中被描繪的區(qū)域中用“OFF”產(chǎn)生輪廓圖象,如圖41(b)所示。專用圖象產(chǎn)生器60把輪廓圖象的外部置為“OFF”,生成細(xì)化的光柵圖象,如圖41(c)所示。
在實(shí)施例11中,與實(shí)施例9的細(xì)化處理方法相比較,“ON”和“OFF”被反轉(zhuǎn)。在實(shí)施例9中,排除圖象被產(chǎn)生為在“OFF”區(qū)域中的“ON”,在結(jié)束處“ON”和“OFF”被反轉(zhuǎn)來(lái)生成細(xì)化的光柵圖象。在實(shí)施例11中,細(xì)化的光柵圖象通過在“ON”的區(qū)域中把專有圖象置為“OFF”被生成。
實(shí)施例12在實(shí)施例11中,使用了一個(gè)漢字字符。然而,這個(gè)字體處理方法也可應(yīng)用于其它字符,例如平假名,平假名,字母,數(shù)字,希臘語(yǔ),阿拉伯語(yǔ),Hungle,等等。除這些字符外,它也可能應(yīng)用于象三角形,圓,正方形,等等的符號(hào)。它也可以應(yīng)用于任何圖象。當(dāng)用矢量數(shù)據(jù)確定的圖象被輸出時(shí),可以應(yīng)用前述的方法。
在已經(jīng)如此描述了本發(fā)明的幾個(gè)特別的實(shí)施例的情況下,本發(fā)明的技術(shù)人員將容易地想到各種替代、修改和改進(jìn)。這些替代、修改和改進(jìn)都屬于本文件的部分,并且在本發(fā)明的精神和范圍內(nèi)。因此,以上的描述只是作為例子并僅由以下給出的權(quán)利要求及等同物來(lái)限定。
權(quán)利要求
1.一個(gè)字體處理器,包含一個(gè)字體存儲(chǔ)器,用來(lái)存儲(chǔ)輪廓字體信息;一個(gè)寬度指示器,用來(lái)指示輪廓的線條寬度;一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有指定的線條寬度的輪廓圖象;一個(gè)字體生成器,與輪廓產(chǎn)生器結(jié)合,用來(lái)基于輪廓圖象生成字體圖象;及輸出裝置,與字體生成器結(jié)合,用來(lái)輸出字體圖象。
2.一個(gè)字體處理器,包含一個(gè)字體存儲(chǔ)器,用來(lái)存儲(chǔ)輪廓字體信息;一個(gè)光柵化器,與字體存儲(chǔ)器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生輪廓并用來(lái)把輪廓轉(zhuǎn)換成包括輪廓及輪廓的內(nèi)部區(qū)域的光柵圖象;一個(gè)寬度指示器,用來(lái)指示輪廓的線條寬度;一個(gè)輪廓產(chǎn)生器,與寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有所指示的線條寬度的輪廓圖象;一個(gè)處理單元,與輪廓產(chǎn)生器和光柵化器結(jié)合,用來(lái)利用輪廓圖象處理光柵圖象以便修正光柵圖象來(lái)產(chǎn)生修正的光柵圖象;及輸出裝置,與處理單元結(jié)合,用來(lái)輸出修正的光柵圖象。
3.一個(gè)字體處理器,包含一個(gè)字體存儲(chǔ)器,用來(lái)存儲(chǔ)輪廓字體信息;一個(gè)寬度指示器,用來(lái)指示輪廓的線條寬度;一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有指示的線條寬度的輪廓圖象;一個(gè)粗線條產(chǎn)生器,與輪廓產(chǎn)生器結(jié)合,用來(lái)基于輪廓圖象產(chǎn)生光柵圖象,這個(gè)光柵圖象包括輪廓圖象及輪廓圖象的內(nèi)部區(qū)域;一個(gè)處理單元,用來(lái)利用輪廓圖象處理光柵圖象以便修正光柵圖象來(lái)產(chǎn)生修正的光柵圖象;及輸出裝置,與處理單元結(jié)合,用來(lái)輸出修正的光柵圖象。
4.一個(gè)字體處理器,包含一個(gè)字體存儲(chǔ)器,用來(lái)存儲(chǔ)輪廓字體信息;一個(gè)寬度指示器,用來(lái)指示輪廓的線條寬度;一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有所指示的線條寬度的輪廓圖象;一個(gè)專用圖象產(chǎn)生器,與輪廓產(chǎn)生器結(jié)合;用來(lái)產(chǎn)生包括輪廓圖象及輪廓的外部區(qū)域的專有圖象;一個(gè)光柵化器,與專用圖象產(chǎn)生器結(jié)合,用來(lái)從一個(gè)預(yù)定區(qū)域中排除專有圖象以便產(chǎn)生光柵圖象;及輸出裝置,與光柵化器結(jié)合,用來(lái)輸出被光柵化器產(chǎn)生的光柵圖象。
5.一個(gè)字體處理器,包含一個(gè)字體存儲(chǔ)器,用來(lái)存儲(chǔ)輪廓字體信息;一個(gè)寬度指示器,用來(lái)指示輪廓的線條寬度;一個(gè)輪廓產(chǎn)生器,與字體存儲(chǔ)器和寬度指示器結(jié)合,用來(lái)按照輪廓字體信息產(chǎn)生具有所指示的線條寬度的輪廓圖象;一個(gè)粗線條產(chǎn)生器,與輪廓產(chǎn)生器結(jié)合,用來(lái)基于輪廓圖象產(chǎn)生光柵圖象,這個(gè)光柵圖象包括輪廓圖象及輪廓圖象的內(nèi)部區(qū)域;及輸出裝置,與粗線條產(chǎn)生器結(jié)合,用來(lái)輸出被粗線條產(chǎn)生器產(chǎn)生的光柵圖象。
6.權(quán)利要求2的字體處理器,其中光柵圖象和輪廓圖象各由多種元素組成,這些元素的每一個(gè)被用ON和OFF的雙元信號(hào)表示,其中處理單元在輪廓圖象的一個(gè)元素是OFF且光柵圖象的對(duì)應(yīng)元素是ON時(shí)選擇修正的光柵圖象的一個(gè)元素。
7.權(quán)利要求2的字體處理器,其中光柵圖象和輪廓圖象各被用一組元素組成,這組元素的每一個(gè)元素被用ON和OFF的雙元信號(hào)表示,其中處理單元在光柵圖象的一個(gè)元素和輪廓圖象的對(duì)應(yīng)元素中至少一個(gè)是ON時(shí)選擇修正的光柵圖象的一個(gè)元素。
8.權(quán)利要求1的字體處理器,其中輪廓產(chǎn)生器為基于許多輪廓的一個(gè)字體產(chǎn)生輪廓圖象并在當(dāng)輪廓產(chǎn)生器基于線條寬度產(chǎn)生輪廓圖象時(shí)輪廓相互重疊而產(chǎn)生一個(gè)重疊區(qū)域的情況下刪除這個(gè)重疊區(qū)域。
9.權(quán)利要求1的字體處理器,另外包含一個(gè)輸出單元,與輸出裝置結(jié)合,這個(gè)輸出單元具有預(yù)定的輸出分辨度,在那里寬度指示器基于預(yù)定的輸出分辨度確定線條寬度。
10.權(quán)利要求1的字體處理器,另外包含一個(gè)輸出單元,與輸出裝置結(jié)合,這個(gè)輸出單元具有輸出區(qū)域的預(yù)定的尺寸,在那里寬度指示器基于輸出區(qū)域的預(yù)定的尺寸確定線條寬度。
11.權(quán)利要求1的字體處理器,在那里輪廓字體信息包括許多字體類型,在那里寬度指示器基于每一個(gè)字體類型確定線條寬度。
12.權(quán)利要求1的字體處理器,在那里輪廓字體信息包括許多字符類型,在那里寬度指示器基于每一個(gè)字符類型確定線條寬度。
13.權(quán)利要求1的字體處理器,在那里寬度指示器基于一個(gè)接收到的值確定線條寬度。
14.權(quán)利要求2的字體處理器,在那里光柵化器用不同的圖形來(lái)光柵化輪廓及輪廓的內(nèi)部區(qū)域。
15.權(quán)利要求3的字體處理器,在那里粗線條產(chǎn)生器用不同的圖形來(lái)光柵化輪廓及輪廓的內(nèi)部區(qū)域。
16.權(quán)利要求1的字體處理器,在那里光柵圖象包括具有厚度的線條,這個(gè)字體處理器另外包含一個(gè)判定單元,用來(lái)按照預(yù)定因素確定線條的厚度。
17.權(quán)利要求16的字體處理器,在那里判定單元使用輸出分辨度作為預(yù)定因素。
18權(quán)利要求16的字體處理器,在那里判定單元使用一個(gè)所接收的值作為預(yù)定因素。
19.權(quán)利要求1的字體處理器,另外包含一個(gè)圖象存儲(chǔ)器,用來(lái)存儲(chǔ)被輸出裝置輸出的字體圖象,及一個(gè)應(yīng)用單元,用來(lái)檢查字體圖象是否被存儲(chǔ)在圖象存儲(chǔ)器中并在光柵圖象被存儲(chǔ)在那里時(shí)從圖象存儲(chǔ)器中讀出字體圖象。
20.一種字體處理方法,用來(lái)產(chǎn)生修正的光柵圖象,包括以下步驟基于輪廓字體信息產(chǎn)生輪廓并光柵化輪廓及輪廓的內(nèi)部區(qū)域來(lái)產(chǎn)生光柵圖象;基于輪廓字體信息產(chǎn)生具有輪廓寬度的輪廓圖象;及通過執(zhí)行一個(gè)預(yù)定的運(yùn)算用輪廓圖象修正光柵圖象,來(lái)產(chǎn)生修正的光柵圖象。
21.一種字體處理方法,用來(lái)產(chǎn)生修正的光柵圖象,包含以下步驟基于輪廓字體信息產(chǎn)生具有輪廓寬度的輪廓圖象;從輪廓圖象及輪廓圖象的內(nèi)部區(qū)域中產(chǎn)生光柵圖象;及通過執(zhí)行一個(gè)預(yù)定的運(yùn)算用輪廓圖象修正光柵圖象,來(lái)產(chǎn)生修正的光柵圖象。
22.一種字體處理方法,用來(lái)產(chǎn)生光柵圖象,包含以下步驟基于輪廓字體信息產(chǎn)生具有輪廓寬度的輪廓圖象;從輪廓圖象及輪廓圖象的外部區(qū)域中產(chǎn)生專有圖象;及通過對(duì)一個(gè)預(yù)定的區(qū)域除去專有圖象產(chǎn)生光柵圖象。
23.權(quán)利要求20的字體處理方法,另外包括確定輪廓寬度的步驟。
24.權(quán)利要求23的字體處理方法,在那里確定輪廓寬度的步驟包括基于顯示尺寸,字型和字符類型中的至少一個(gè)確定輪廓寬度。
25.權(quán)利要求20的字體處理方法,另外包括接收指示期望的輪廓寬度的輪廓寬度數(shù)據(jù)的步驟,在那里確定輪廓寬度的步驟包括基于所接收的輪廓寬度數(shù)據(jù)確定輪廓寬度。
26.權(quán)利要求20的字體處理方法,在那里修正光柵圖象的步驟包括確定在光柵圖象和輪廓圖象的反轉(zhuǎn)之間的不同之處。
27.權(quán)利要求20的字體處理方法,在那里修正光柵圖象的步驟包括確定光柵圖象和輪廓圖象的和。
28.權(quán)利要求20的字體處理方法,還包括確定輸出裝置的分辨度的步驟,在那里預(yù)定的運(yùn)算確定基于輸出裝置的分辨度。
29.權(quán)利要求21的字體處理方法,還包括確定輪廓寬度的步驟。
30.權(quán)利要求29的字體處理方法,在那里確定輪廓寬度的步驟包括基于顯示尺寸,字型和字符類型中的至少一個(gè)確定輪廓寬度。
31.權(quán)利要求21的字體處理方法,還包括接收指示期望的輪廓寬度的輪廓寬度數(shù)據(jù)的步驟,在那里確定輪廓寬度的步驟包括基于被接收的輪廓寬度數(shù)據(jù)確定輪廓寬度。
32.權(quán)利要求21的字體處理方法,在那里修正光柵圖象的步驟包括確定在光柵圖象和輪廓圖象的反轉(zhuǎn)之間的不同之處。
33.權(quán)利要求21的字體處理方法,在那里修正光柵圖象的步驟包括確定光柵圖象和輪廓圖象的和。
34.權(quán)利要求21的字體處理方法,另外包括確定輸出裝置的分辨度的步驟,在那里預(yù)定的運(yùn)算確定基于輸出裝置的分辨度。
35.權(quán)利要求22的字體處理方法,還包括確定輪廓寬度的步驟。
36.權(quán)利要求35的字體處理方法,在那里確定輪廓寬度的步驟包括基于顯示尺寸、字型和字符類型中的至少一個(gè)確定輪廓寬度。
37.權(quán)利要求22的字體處理方法,還包括接收指示期望的輪廓寬度的輪廓寬度數(shù)據(jù)的步驟,在那里確定輪廓寬度的步驟包括基于被接收的輪廓寬度數(shù)據(jù)確定輪廓寬度。
38.權(quán)利要求22的字體處理方法,另外還包括確定輸出裝置的分辨度的步驟,在那里預(yù)定的運(yùn)算確定基于輸出裝置的分辨度。
全文摘要
本發(fā)明提供一種字體處理器,它對(duì)輪廓字體按照輸出裝置的分辨度執(zhí)行細(xì)化處理,標(biāo)準(zhǔn)處理和粗化處理。按照本發(fā)明,光柵化器按存儲(chǔ)在字體存儲(chǔ)器中的輪廓字體在第一區(qū)域中生成光柵圖像。輪廓產(chǎn)生器按照被輪廓寬度確定器確定的輪廓寬度在第二區(qū)域中產(chǎn)生輪廓圖像。運(yùn)算單元進(jìn)行光柵圖像和輪廓圖像的一個(gè)邏輯運(yùn)算,并生成細(xì)化的或粗化的光柵圖像。
文檔編號(hào)G09G5/28GK1123923SQ9511558
公開日1996年6月5日 申請(qǐng)日期1995年8月18日 優(yōu)先權(quán)日1994年8月19日
發(fā)明者池田信之, 櫻井宏, 小林義人, 大俊幾, 山本浩和 申請(qǐng)人:三菱電機(jī)株式會(huì)社