新四季網

漢字造字方法和設備、構造字體庫的方法

2023-07-28 15:27:16

專利名稱:漢字造字方法和設備、構造字體庫的方法
技術領域:
本發明屬於字體庫技術領域,具體涉及一種漢字造字方法和設備、構造字體庫的方法。
背景技術:
在電子設備中,漢字是以字符編碼(如Unicode、GB2312等)形式表示的;但字符編碼僅僅是電子設備內部的代碼,一個漢字要被以一定字體(如黑體、宋體等)顯示或列印出來必須要用到字形數據,字形數據可為輪廓圖、點陣圖、矢量圖等形式,用於規定該漢字是什麼「樣子」的;而構造一個漢字的字形數據並將其與字符編碼對應起來的過程就稱為「造字」。顯然,不同字體庫中同一漢字的字形數據不同,因此當要構造一個新字體庫時要進行大量的造字工作。現有的漢字造字方法通常是字體設計師先用一種字體設計出常用的幾百個漢字,之後工作人員再以這些常用漢字為基礎,根據感覺一筆一畫的造出其它漢字的字形數據並進行調整。發明人發現,現有技術中至少存在如下問題:現有漢字造字方法是人工逐字進行的,效率低下、花費時間長(構造常規的萬字左右的字體庫通常需要數月),成本高,尤其當要為含幾十萬漢字的超大字體庫(例如用於漢字研究領域的字體庫)造字時,工作量就更加龐大;同時,字體庫不論多大都不可能包括人們可能用到的全部漢字,故當用戶用到一些字體庫中沒有的字(如生僻字或自造字),這些字就不能顯示或不能按所需的字體顯示。

發明內容
本發明所要解決的技術問題包括,針對現有技術中的漢字造字方法效率低、成本高、無法實時造字的問題,提供一種效率高、成本低、可實時造字的漢字造字方法。解決本發明技術問題所採用的技術方案是一種漢字造字方法,包括:獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,並根據所述部件編碼從漢字部件庫中提取相應的漢字部件,其中所述結構編碼規定所述漢字的結構及所述漢字部件在所述漢字中的位置;用所述漢字部件根據所述結構編碼生成所述漢字的字形數據,並將所述漢字的字形數據與字符編碼相對應。其中,「漢字部件」是指漢字中相對獨立的結構單元,其可按不同的方法劃分。例如,漢字部件可以是「筆畫」,如橫、點等,也可以是「偏旁部首」,如單人旁、利刀旁、寶蓋頭等,還可以是漢字的組成部分,如「發」字下邊的「又」以及去掉「又」後剩餘的「夕」可分別作為一個漢字部件。值得注意的是,漢字部件還與其大小、形狀有關,故筆畫和結構相同的單元可能是不同的漢字部件,例如,「可」字和「於」字最上邊一筆都是「橫」,但這兩橫的寬度、形狀不同,故可被認定為兩個漢字部件;再如,「國」字和「喝」字中均有「 口 」,但二者的尺寸、形狀不同,故可被認定為兩個漢字部件。當然,由於漢字數量極多,因此不可能將每個漢字的每個結構單元都認定為單獨的漢字部件,對多個相似度較高的結構單元,可只選取其中的一個作為漢字部件;比如,若認為「晶」字中的三個「日」部件形態雖有差別但差別不大,可只選取其中的一個作為漢字部件。總之,漢字部件的劃分沒有絕對的標準,但從方便的角度說,通常可將漢字中較常見的、相對獨立的、形態較相似的結構單元作為一個漢字部件。優選的是,在所述獲取所要構造的漢字的字符編碼、部件編碼、結構編碼之前,還包括:從漢字部件獲取單元獲取漢字部件,為所述漢字部件賦予部件編碼以構造漢字部件庫。進一步優選的是,所述漢字部件獲取單元包括筆跡記錄單元、圖像獲取單元、圖像處理單元、數據存儲單元中的至少一種。進一步優選的是,所述構造漢字部件庫還包括:獲取所述漢字部件庫中的漢字部件的部件參數,所述部件參數包括部件高度、部件寬度、部件高寬比、部件面積、部件黑白t匕、部件重心、部件來源字符、部件原位置、部件推薦位置中的至少一種。優選的是,所述結構編碼為ISO 10646標準中的IDS屬性的結構編碼。優選的是,所述獲取所要構造的漢字的字符編碼、部件編碼、結構編碼包括:通過輸入設備獲取所要構造的漢字的字符編碼、部件編碼、結構編碼;或通過預存的編碼對應表獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,所述編碼對應表中存儲有所要構造的漢字的字符編碼、部件編碼、結構編碼的對應關係。優選的是,所述用所述漢字部件根據所述結構編碼生成所述漢字的字形數據包括:步驟1、根據所述結構編碼將所述漢字部件置於指定位置,得到中間字形;步驟2、判斷所述中間字形的字形參數是否符合預訂值,是則進行步驟5,否則進行步驟3 ;步驟3、根據所述字形參數與預訂值的差別調整所述中間字形;步驟4、判斷調整後的所述中間字形的字形參數是否符合預訂值,以及調整次數是否超出限制,有至少一項是則進行步驟5,均否則進行步驟3 ;步驟5、根據當前的所述中間字形生成所述漢字的字形數據。進一步優選的是,所述字形參數包括:漢字高度、漢字寬度、漢字高寬比、漢字面積、漢字黑白比、漢字重心、部件高度、部件寬度、部件高寬比、部件面積、部件黑白比、部件重心、部件距離、部件尺寸比中的至少一種。進一步優選的是,所述調整所述中間字形包括下列調整操作中的至少一種:調整漢字高度、調整漢字寬度、調整漢字面積、調整漢字黑白比、調整部件高度、調整部件寬度、調整部件面積、調整部件黑白比、調整部件位置。在本發明的漢字造字方法中,可利用漢字部件庫自動完成造字過程,從而大大提高了造字效率,減少了造字時間,降低了造字成本;同時,當用戶要用到字體庫中沒有的生僻字和自造字等時,可自行造字,將所需的漢字加入字體庫中,使用方便。本發明所要解決的技術問題還包括,針對現有技術中的構造字體庫的方法效率低、成本聞、無法實時造字的問題,提供一種效率聞、成本低、可實時造字的構造字體庫的方法。
解決本發明技術問題所採用的技術方案是構造字體庫的方法,包括:用上述漢字造字方法生成對應的漢字的字形數據與字符編碼;用所得的漢字的字形數據構造字體庫。在本發明的構造字體庫的方法中,可利用漢字部件庫自動完成造字過程並據此構造字體庫,從而大大提高了構造字體庫的效率,減少了構造字體庫的時間,降低了構造字體庫的成本,尤其對於超大字體庫更是如此;同時,當用戶要用到字體庫中沒有的生僻字和自造字等時,可自行造字,將所需的漢字加入字體庫中,使用方便。本發明所要解決的技術問題還包括,針對現有技術中的漢字造字技術效率低、成本聞、無法實時造字的問題,提供一種效率聞、成本低、可實時造字的構造字體庫的設備。解決本發明技術問題所採用的技術方案是一種漢字造字設備,包括:漢字部件庫存儲單元,用於存儲漢字部件庫,所述漢字部件庫中存儲有對應的漢字部件和部件編號;編碼獲取單元,用於獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,其中所述結構編碼規定所述漢字的結構及所述漢字部件在所述漢字中的位置;字形數據生成單元,用於根據所述漢字的部件編碼和結構編碼生成所述漢字的字形數據,並將所述字形數據與所述漢字的字符編碼相對應。優選的是,還包括:漢字部件獲取單元,用於獲取所述漢字部件並將其提供給所述漢字部件庫存儲單
J Li ο使用本發明的漢字造字設備可自動完成造字過程,從而大大提高造字效率,減少造字時間,降低造字成本;同時,當用戶要用到字體庫中沒有的生僻字和自造字等時,可自行造字,將所需的漢字加入字體庫中,使用方便。本發明特別適用於構造超大字體庫。


圖1為本發明的實施例的漢字造字方法的一個造字過程的示意圖;圖2為本發明的實施例的漢字造字方法的一個造字過程的示意圖;圖3為本發明的實施例2的漢字造字方法的流程圖;圖4為本發明的實施例2的漢字造字方法的中生成字形數據的具體過程的流程圖。
具體實施例方式為使本領域技術人員更好地理解本發明的技術方案,下面結合附圖和具體實施方式
對本發明作進一步詳細描述。實施例1:本實施例提供一種漢字造字方法,包括:獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,並根據部件編碼從漢字部件庫中提取相應的漢字部件,其中結構編碼規定漢字的結構及漢字部件在漢字中的位置;用漢字部件根據結構編碼生成漢字的字形數據,並將漢字的字形數據與字符編碼相對應。在本實施例的漢字造字方法中,可利用漢字部件庫自動完成造字過程,從而大大提高了造字效率,減少了造字時間,降低了造字成本;同時,當用戶要用到字體庫中沒有的生僻字和自造字等時,可自行造字,將所需的漢字加入字體庫中,使用方便。實施例2:本實施例提供一種漢字造字方法,包括以下步驟:S01、從漢字部件獲取單元獲取漢字部件;也就是說,獲取各種漢字部件的字形數據,從而為用漢字部件造字提供基礎。優選的,漢字部件獲取單元為筆跡記錄單元、圖像獲取單元、圖像處理單元、數據存儲單元中至少一種。顯然,獲取漢字部件的具體方法可根據漢字部件獲取單元的不同而不同;比如,當使用筆跡記錄單元時,可由字形設計師直接手寫特定的漢字部件(或漢字),而筆跡記錄單元獲取所寫的漢字部件的數據;使用圖像獲取單元時,可由字形設計師在紙上寫下漢字部件(或漢字),再通過掃描、照相等方式獲得漢字部件的數據;使用圖像處理單元時,可將字體設計師設計的漢字或者現有字體庫中的漢字的圖像「拆分」為不同的漢字部件;使用數據存儲單元時,則可將之前存儲的漢字部件數據直接導入。S02、為獲取的漢字部件賦予部件編碼以構造漢字部件庫;也就是說,將漢字部件與部件編碼對應起來,並構成特定格式的資料庫。在賦予部件編碼的過程中,通常可為多個類似的漢字部件(例如多種同形狀的「 + 」部件)賦予一個部件編碼,這樣的方法比較適於與現有技術相結合,且編碼量少,易於掌握,但其需要在後續的步驟中從多個漢字部件中進行進一步的選擇;當然,為每個漢字部件賦予一個獨立的部件編碼也是可行的。顯然,由於字部件的數量比漢字的數量少得多,因此,獲取某種字體的漢字部件(或者構造漢字部件庫)的操作顯然比構造該種字體的全部漢字要簡單得多;同時,由於漢字是由各種漢字部件構成的,故在構造漢字部件庫後,即可利用其中的漢字部件自動組合出大量的該字體的漢字,從而大大提高漢字造字工作的效率,降低成本。S03、優選的,獲取漢字部件的部件參數;獲取部件參數可為後續步驟提供便利,例如要從一個部件編碼下的多個漢字部件中選擇一個進行造字時,就可以根據它們的部件參數進行選擇。其中,部件參數可通過對漢字部件庫中的漢字部件的數據進行計算得到,由於該計算過程可為常規的對圖像進行分析處理的方法,故在此不再詳細描述;當然,部件參數也可在獲取漢字部件的同時計算或獲取(如輸入)。優選的,部件參數包括部件高度、部件寬度、部件高寬比、部件面積、部件黑白比、部件重心、部件來源字符、部件原位置、部件推薦位置中的至少一種。其中,部件高度、部件寬度、部件高寬比、部件面積等很好理解,不再具體解釋;部件黑白比是指在漢字部件的圖形中,黑色部分(或者說被筆畫佔據的部分)與剩餘空白部分的面積比,其體現了漢字部件是不是被筆畫佔的很「滿」;部件重心則表示若以漢字部件的筆畫為重量均勻的實體,漢字部件整體重心所處的位置;部件來源字符和部件原位置表示該漢字部件是從哪個漢字的哪個部分提取的,部件推薦位置則表示該漢字部件優選用於什麼結構的漢字(如左右結構、半包圍結構等)的什麼位處置(如上方、左方等),這三個參數均可幫助選擇最合適的漢字部件進行造字(例如來自上下結構漢字上方的漢字部件顯然最可能適用於其它上下結構漢字的上方)。S04、獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,並根據部件編碼從漢字部件庫中提取相應的漢字部件;也就是說,通過獲取字符編碼、部件編碼、結構編碼確定目前要構造什麼漢字,以及這個漢字由什麼漢字部件組成、各部件位於什麼位置。例如在圖1中,選擇位於上邊的「a」部件和位於下邊的「子」部件以構造「字」字;而在圖2中,選擇位於左邊的「日」部件和位於右邊的「月」部件以構造「明」字。其中,字符編碼可為Unicode、GB2312、GB18030、GB13000(即 GBK)、Big5 等常規的漢字編碼,其用來表示所要構造的是哪個漢字。而結構編碼規定漢字的結構及漢各字部件在漢字中的位置。優選的,結構編碼可為ISO 10646標準中的IDS屬性的結構編碼,該IDS屬性是對漢字結構屬性的一種編碼,不同的編碼代表漢字為不同結構(如左右結構、上下結構、左中右結構、半包圍結構等)。顯然,由於一個漢字可能由多個漢字部件構成(即具有多個部件編碼),故可通過一定的規則確定漢字部件的位置,例如結構編碼表示漢字為左右結構時,可規定先輸入的部件編碼代表左邊的漢字部件,而後輸入的部件編碼代表右邊的漢字部件等。顯然,當一個部件編碼代表了多個漢字部件時,若要從漢字部件庫中提取相應的漢字部件,還可讓用戶進一步選擇具體使用哪個漢字部件;比如客戶輸入了 「 + 」部件的部件編碼後,系統可給出多個不同形式的「 + 」部件的圖像以及相應的部件參數信息供用戶選擇,用戶選定某個「 + 」部件後系統再從漢字部件庫中提取相應的漢字部件。優選的,字符編碼、部件編碼、結構編碼是通過輸入設備獲取的。顯然,字符編碼、部件編碼、結構編碼等具體的輸入方法是多樣的;例如,可通過鍵盤輸入,也可通過語音識別設備、筆記識別設備等輸入;可先輸入字符編碼後再輸入對應的部件編碼和結構編碼,也可先輸入部件編碼和結構編碼後再輸入字符編碼;輸入的內容可以是直接的編碼,也可輸入語言或符號後系統自動將其轉換為編碼,如要輸入「啊」字時,可直接輸入其Unicode字符編碼「21834」,也可通過拼音輸入法等輸入「啊」字;再如,要輸入「a」部件的部件編碼時,可直接輸入其編碼,也可輸入「寶蓋頭」字樣而系統自動將其轉換為部件編碼。本實施例的方法在用戶自造字時特別適用,當用戶要用到某個字體庫中沒有的字時,即可用本實施例的方法進行造字並將其添加入字體庫中。當然,在構造完整的字體庫時,也可使用本實施例的造字方法,或者也可由系統逐一給出不同漢字(或字符編碼),再人工選擇相應的部件編碼、結構編碼。S05、用漢字部件根據結構編碼生成漢字的字形數據;也就是說,根據結構編碼將所選的漢字部件放在特定位置處,以形成所需漢字的字形數據。優選的,本步驟還包括用循環運算對字形數據進行優化的過程,其具體方法可包括:S051、根據結構編碼將漢字部件置於指定位置處,得到中間字形;例如,將「 」部件置於上方,將「子」部件置於下方,組合得到圖1中右起第3個「字」字;或者,將「日」部件置於左方,將「月」部件置於右方,組合得到圖2中右起第4個「明」字。S052、判斷中間字形的字形參數是否符合預訂值,是則進行步驟S055,否則進行步驟S053;其中,字形參數可通過對中間字形進行分析計算得到,也可通過對部件參數進行計算得到。本步驟的目的在於判斷當前中間字形的優劣(如是否美觀、是否符合人們的閱讀習慣等),以確定是否要對其進行調整。顯然,人們認為「美觀」的漢字的結構通常具有一定的共性,比如整個字的高度、寬度、面積在一定範圍內,高寬比接近於1,整個字的重心接近於漢字的幾何中心,各漢字部件間的距離較小、尺寸比例適當、分布均勻等;而且,這些共性經常可通過一定的參數體現出來。因此,可以設定一些字形參數的預定值,並用中間字形的字形參數是否符合這些預定值來判斷該字形的優劣。當然,預定值的選擇和具體數值會根據漢字結構等的不同有所不同(比如獨立結構的字就無需使用部件距離參數,再如上下結構的字和上中下結構的字的部件距離參數的預訂值肯定不同)。同時,判斷字形參數是否符合預定值的方法也是多樣的,比如可以判斷多個字形參數是否均分別符合相應預定值,也可判斷由多個字形參數計算得到的綜合值是否符合一個預定值,也可先對某個(或某些)字形參數進行優先判斷,在其合格(或不合格)時才對其它的字形參數進行判斷。優選的,字形參數包括漢字高度、漢字寬度、漢字高寬比、漢字面積、漢字黑白比、漢字重心、部件高度、部件寬度、部件高寬比、部件面積、部件黑白比、部件重心、部件距離、部件尺寸比中的至少一種。其中,漢字寬度、漢字高度等參數指中間字形整體的相應參數,而部件面積、部件黑白比等指中間字形中各漢字部件的相應參數;部件距離指中間字形中各漢字部件間的距離(可為漢字部件邊框間的距離,也可為漢字部件中心間的距離),其能體現各漢字部件的位置是否合理;部件尺寸比則指各漢字部件的尺寸的比例(可為面積t匕、高度比等),可體現漢字中各漢字部件的大小是否合適。例如,S051步驟得到的圖1中右起第3個「字」字,看起來感覺其上下分離,從而計算時可發現其部件距離(上下距離)偏大,不符合預定值;同樣,S051步驟得到的圖2中右起第4個「明」字也是部件距離(左右距離)偏大,不符合預定值。S053、根據字形參數與預訂值的差別調整中間字形;即根據S052步驟的判斷結果,確定中間字形具體哪裡不合適,並進行相應的調整,從而得到新的中間字形。顯然,本步驟中進行的調整應當是根據字形參數與預訂值的差別進行的;比如,如果發現漢字高度偏大,就應進行能夠降低漢字高度的調整操作。優選的,調整中間字形的操作包括調整漢字高度、調整漢字寬度、調整漢字面積、調整漢字黑白比、調整部件高度、調整部件寬度、調整部件面積、調整部件黑白比、調整部件位置中的至少一種。其中,調整漢字高度、調整漢字寬度等是指對漢字整體進行調整,調整部件高度、調整部件位置等是指對漢字中的各漢字部件單獨進行調整;調整漢字黑白比和調整部件黑白比是指改變字形中筆畫的「粗細」,從而改變筆畫所佔的比例;調整漢字面積和調整部件面積是指在不改變高寬比的情況下放大、縮小漢字部件或漢字;調整部件位置是指移動漢字部件在中間字形中的位置。當然,調整中間字形的操作還有很多其它類型(例如使漢字或漢字部件傾斜或扭曲);在此就不再逐一說明。顯然,調整操作與字形參數並不一一對應,一個字形參數可通過多種不同的操作調整,一個調整操作也可用於改變多種字形參數。例如,中間字形的漢字重心參數不合格時,可用調整部件位置的操作解決,也可用調整部件面積的操作解決,還可用調整部件高度、調整部件寬度、調整漢字高度、調整漢字寬度等操作解決;同樣,調整部件位置的操作即可用於調整漢字重心,也可用於調整部件距離,還可用於調整漢字高度、漢字寬度等。例如,S052步驟判斷出圖1中右起第3個「字」字的部件距離(上下距離)偏大,故進行調整部件位置的操作,將上下兩個漢字部件「拉近」,得到右起第2個「字」字;而5052步驟判斷出圖2中「明」字部件距離(左右距離)偏大,故進行調整部件位置的操作,將其左右兩個漢字部件「拉近」,得到右起第3個「明」字。顯然,雖然在圖1、圖2的例子中,本步驟中均只進行了一個調整操作,但在本步驟中進行多項調整操作也是可行的。S054、判斷調整後的中間字形的字形參數是否符合預訂值,以及調整次數是否超出限制,有至少一項為是則進行步驟S055,均為否則進行步驟S053 ;也就是說,對調整後的中間字形的字形參數進行再次判斷,如果仍不合格則繼續進行循環調整,直到字形參數合格或調整次數超出限制為止。例如,圖1中右起第2個「字」字經一次調整後字形參數全部合格,故直接進入S055步驟;而圖2中右起第3個「明」經一次調整後,雖然部件距離合格,但其左側的「日」部件明顯偏寬、偏矮,即其部件高寬比仍不合格,故要返回步驟S053中,對「日」部件進行調整部件高度和調整部件寬度的操作,得到右起第2個「明」字,而這個「明」字的字形參數均合格,可進入S055步驟。當然,如前所述,如果在S052步驟中直接判斷出圖2中右起第4個「明」字的部件距離和部件高寬比均不合格,並在步驟S053中同時進行了調整部件距離、調整部件高度、調整部件寬度的操作,一次就得到圖2中右起第2個「明」字,則就不必進行循環調整了 ;由此可見,具體的字形參數判斷、中間字形調整過程可以是多樣的。顯然,上述調整畢竟不同於人工操作,對有些字形參數可能難以進行合理的調整,或者將一個自行參數調整合格的同時可能導致其它字形參數變成不合格的,因此這種調整有可能耗費很長時間(即進行很多次循環),甚至可能陷入死循環而一直進行下去;為避免這種現象,可記錄調整的次數(如每進行一次調整則將調整次數加1,或每進行一次調整將剩餘調整次數減I),並判斷調整次數是否超出限制(如調整次數過多),如果是則不論自行參數是否合格,強行進入S055步驟而終止調整。S055、以當前的中間字生成該漢字的字形數據;也就是生成字體庫中所用的點陣圖、矢量圖、輪廓圖等形式的字形數據。例如,以圖1中最右邊的「字」字、圖2中最右邊的「明」字作為最終的字形數據。S06、將所得的字形數據與該漢字的字符編碼對應起來;即明確該字形數據代表的是哪個漢字,完成造字。實施例3:本實施例提供一種漢字造字方法,其與實施例2的漢字造字方法類似,區別在於:其步驟S04中,不是由用戶輸入字符編碼、部件編碼、結構編碼,而是通過預存的編碼對應表獲取所要構造的漢字的字符編碼、部件編碼、結構編碼;該編碼對應表中存儲有所要構造的漢字的字符編碼、部件編碼、結構編碼的對應關係。也就是說,可預先構造一個編碼對應表(可專門構造,也可在之前的造字過程中同時生成),之後再進行造字時,系統即可從該編碼對應表逐一讀取字符編碼以及相應的部件編碼、結構編碼,並自動完成造字過程。這樣,在完成了 一個字體庫(尤其是超大字體庫)的構造後,即可同時獲取該字體庫的編碼對應表,從而可用該編碼對應表全自動的完成其它許多字庫的造字工作(當然,這要求各造字過程中所用的漢字部件庫的編碼規則一致),進一步大幅提聞造字效率。實施例4:本實施例提供一種構造字體庫的方法,包括以下步驟:用上述各實施例的漢字造字方法生成對應的漢字的字形數據與字符編碼;即用上述的漢字造字方法造出字體庫中所需的漢字。其中,如果使用上述實施例3的方法,則本步驟可全自動進行,如果使用上述實施例2的方法,則可由系統逐一給出(當然也可由用戶輸入)不同的漢字或漢字編碼,再讓用戶選擇相應的部件編碼和結構編碼。用所得的字形數據構造字體庫;即按照字體庫所需的格式將字形數據「裝庫」,得到可用的字體庫文件。在本實施例的構造字體庫的方法中,可利用漢字部件庫自動完成造字過程並據此構造字體庫,從而大大提高了構造字體庫的效率,減少了構造字體庫的時間,降低了構造字體庫的成本,尤其對於超大字體庫更是如此;同時,當用戶要用到字體庫中沒有的生僻字和自造字等時,可自行造字,將所需的漢字加入字體庫中,使用方便。實施例5:本實施例提供一種漢字造字設備,包括:漢字部件庫存儲單元,用於存儲漢字部件庫,漢字部件庫中存儲有對應的漢字部件和部件編號。編碼獲取單元,用於獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,其中結構編碼規定漢字的結構及漢字部件在漢字中的位置。字形數據生成單元,用於根據漢字的部件編碼和結構編碼生成漢字的字形數據,並將該字形數據與漢字的字符編碼相對應。優選的,漢字造字設備還包括漢字部件獲取單元,用於獲取漢字部件並將其提供給漢字部件庫存儲單元;該漢字部件獲取單元可為筆跡記錄單元、圖像獲取單元、圖像處理單元、數據存儲單元等。當然,漢字造字設備中還可包括與上述各實施例的漢字造字方法相對應的功能單元,如計算部件參數的單元,計算字形參數的單元、調整中間字形的單元等;漢字造字設備的各單元可以是獨立的,也可集成為一體,例如集成為一個處理器和一個存儲器等。使用本實施例的漢字造字設備可自動完成造字過程,從而大大提高造字效率,減少造字時間,降低造字成本;同時,當用戶要用到字體庫中沒有的生僻字和自造字等時,可自行造字,將所需的漢字加入字體庫中,使用方便。可以理解的是,以上實施方式僅僅是為了說明本發明的原理而採用的示例性實施方式,然而本發明並不局限於此。對於本領域內的普通技術人員而言,在不脫離本發明的精神和實質的情況下,可以做出各種變型和改進,這些變型和改進也視為本發明的保護範圍。
權利要求
1.一種漢字造字方法,其特徵在於,包括: 獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,並根據所述部件編碼從漢字部件庫中提取相應的漢字部件,其中所述結構編碼規定所述漢字的結構及所述漢字部件在所述漢字中的位置; 用所述漢字部件根據所述結構編碼生成所述漢字的字形數據,並將所述漢字的字形數據與字符編碼相對應。
2.根據權利要求1所述的漢字造字方法,其特徵在於,在所述獲取所要構造的漢字的字符編碼、部件編碼、結構編碼之前,還包括: 從漢字部件獲取單元獲取漢字部件,為所述漢字部件賦予部件編碼以構造漢字部件庫。
3.根據權利要求2所述的漢字造字方法,其特徵在於,所述漢字部件獲取單元包括筆跡記錄單元、圖像獲取單元、圖像處理單元、數據存儲單元中的至少一種。
4.根據權利要求2所述的漢字造字方法,其特徵在於,所述構造漢字部件庫還包括: 獲取所述漢字部件庫中的漢字部件的部件參數,所述部件參數包括部件高度、部件寬度、部件高寬比、部件面積、部件黑白比、部件重心、部件來源字符、部件原位置、部件推薦位置中的至少一種。
5.根據權利要求1所述的漢字造字方法,其特徵在於,所述結構編碼為ISO10646標準中的IDS屬性的結構編碼。
6.根據權利要求1所述的 漢字造字方法,其特徵在於,所述獲取所要構造的漢字的字符編碼、部件編碼、結構編碼包括: 通過輸入設備獲取所要構造的漢字的字符編碼、部件編碼、結構編碼; 或 通過預存的編碼對應表獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,所述編碼對應表中存儲有所要構造的漢字的字符編碼、部件編碼、結構編碼的對應關係。
7.根據權利要求1至6中任意一項所述的漢字造字方法,其特徵在於,所述用所述漢字部件根據所述結構編碼生成所述漢字的字形數據包括: 步驟1、根據所述結構編碼將所述漢字部件置於指定位置,得到中間字形; 步驟2、判斷所述中間字形的字形參數是否符合預訂值,是則進行步驟5,否則進行步驟3 ; 步驟3、根據所述字形參數與預訂值的差別調整所述中間字形; 步驟4、判斷調整後的所述中間字形的字形參數是否符合預訂值,以及調整次數是否超出限制,有至少一項是則進行步驟5,均否則進行步驟3 ; 步驟5、根據當前的所述中間字形生成所述漢字的字形數據。
8.根據權利要求7所述的漢字造字方法,其特徵在於,所述字形參數包括:漢字高度、漢字寬度、漢字高寬比、漢字面積、漢字黑白比、漢字重心、部件高度、部件寬度、部件高寬t匕、部件面積、部件黑白比、部件重心、部件距離、部件尺寸比中的至少一種。
9.根據權利要求7所述的漢字造字方法,其特徵在於,所述調整所述中間字形包括下列調整操作中的至少一種: 調整漢字高度、調整漢字寬度、調整漢字面積、調整漢字黑白比、調整部件高度、調整部件寬度、調整部件面積、調整部件黑白比、調整部件位置。
10.一種構造字體庫的方法,其特徵在於,包括: 用權利要求1至9中任意一項所述的漢字造字方法生成對應的漢字的字形數據與字符編碼; 用所得的漢字的字形數據構造字體庫。
11.一種漢字造字設備,其特徵在於,包括: 漢字部件庫存儲單元,用於存儲漢字部件庫,所述漢字部件庫中存儲有對應的漢字部件和部件編號; 編碼獲取單元,用於獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,其中所述結構編碼規定所述漢字的結構及所述漢字部件在所述漢字中的位置; 字形數據生成單元,用於根據所述漢字的部件編碼和結構編碼生成所述漢字的字形數據,並將所述字形數據與所述漢字的字符編碼相對應。
12.根據權利要求11所述的漢字造字設備,其特徵在於,還包括: 漢字部件獲取單元,用於獲取所述漢字部件並將其提供給所述漢字部件庫存儲單元。
全文摘要
本發明提供一種漢字造字方法和設備、構造字體庫的方法,屬於字體庫技術領域,其可解決現有的漢字造字技術效率低、成本高、不能實時造字的問題。本發明的漢字造字方法包括獲取所要構造的漢字的字符編碼、部件編碼、結構編碼,根據部件編碼從漢字部件庫中提取漢字部件,其中結構編碼規定了漢字的結構及漢字部件在漢字中的位置;用漢字部件根據結構編碼生成漢字的字形數據,並將字形數據與字符編碼對應。本發明的構造字體庫的方法包括用上述漢字造字方法生成對應的漢字的字形數據與字符編碼,並用所得的字形數據構造字體庫。本發明的漢字造字設備包括與上述方法相應的單元。本發明可用於構造超大字體庫。
文檔編號G06F17/22GK103186511SQ201110459270
公開日2013年7月3日 申請日期2011年12月31日 優先權日2011年12月31日
發明者唐英敏, 馬蕾, 劉洋, 王晨曦, 劉金妮, 欒瑛, 於萍萍 申請人:北京大學, 北大方正集團有限公司, 北京北大方正電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀