TWI623841B - 字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器 - Google Patents

字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器 Download PDF

Info

Publication number
TWI623841B
TWI623841B TW102146037A TW102146037A TWI623841B TW I623841 B TWI623841 B TW I623841B TW 102146037 A TW102146037 A TW 102146037A TW 102146037 A TW102146037 A TW 102146037A TW I623841 B TWI623841 B TW I623841B
Authority
TW
Taiwan
Prior art keywords
character
basic
characters
font
shape
Prior art date
Application number
TW102146037A
Other languages
English (en)
Other versions
TW201523295A (zh
Inventor
姜京秀
Original Assignee
漢陽情報通信股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 漢陽情報通信股份有限公司 filed Critical 漢陽情報通信股份有限公司
Priority to TW102146037A priority Critical patent/TWI623841B/zh
Publication of TW201523295A publication Critical patent/TW201523295A/zh
Application granted granted Critical
Publication of TWI623841B publication Critical patent/TWI623841B/zh

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)

Abstract

本發明提供一種使用字符的字型產生裝置及方法。方法包含:產生第一基本字符作為字元或字素的基本形狀;產生第二基本字符至第a(其中a為大於或等於2的整數)基本字符,基本形狀的橫向擴展形狀及基本形狀的縱向擴展形狀中的至少一者應用於第二基本字符至第a基本字符;藉由使用第一基本字符至第a基本字符中的至少兩者來執行內插運算,以產生形狀不同於第一基本字符至第a基本字符的內插字符;以及藉由使用第一基本字符至第a基本字符及內插字符來產生字型。

Description

字型產生方法、字型產生裝置、電腦可讀儲存媒體 以及網頁字型伺服器
本發明是關於一種字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器。
需要指示字元(character)的形狀的字符以藉由使用字型來表達字元。字符指示字元的詳細形狀、設計及表達等等,且亦指示語言的元素的特定圖形表達,諸如,特定字型或字素(grapheme),或類似者。
舉例而言,用於顯示韓文字元(Hangul character)或類似者的字型需要大量字符。若藉由使用字素組合方法(grapheme combination method)來形成字型,則字型的形狀根據如何將各別字素組合成一個字元而變化,且需要多個字符以表達字素。舉例而言,將總計11,172個可組合字元乘以反映開端子音(initial consonant)、中間母音(medial vowel)及尾端子音(final consonant)的三個格位(case),以形成總計33,615個字素字符。作為減少字 素字符的數目的方法,嘗試將字素字符分類成多個群組,且形成僅介於2000個與4000個之間的字符,以便減少字素字符的數目。
然而,即使在此狀況下,亦有待形成相似字素的大量字符。因此,會花費大量時間來形成字符,且會降低字素字符之間的一致性。
本發明提供一種使用字符內插的字型產生及呈現方法,藉此有效地產生字符以改良字素字符之間的一致性以及字符產生效率。
根據本發明的態樣,提供一種字型產生方法。方法可包含:產生第一基本字符作為字元或字素的基本形狀;產生第二基本字符至第a(其中a為大於或等於2的整數)基本字符,基本形狀的橫向擴展形狀及基本形狀的縱向擴展形狀中的至少一者應用於第二基本字符至第a基本字符;藉由使用第一基本字符至第a基本字符中的至少兩者來執行內插運算,以產生形狀不同於第一基本字符至第a基本字符的內插字符;以及藉由使用第一基本字符至第a基本字符及內插字符來產生字型。
方法可更包含:分析字型被實現的字元的資訊。可根據分析的結果來選擇第一基本字符至第a基本字符中的至少兩者以執行內插運算,以便產生內插字符。
第二基本字符至第a基本字符可包含第二基本字符至第 四基本字符。第二字符可為基本形狀的橫向擴展字符,第三基本字符可為基本形狀的縱向擴展字符,且第四基本字符可為基本字符的橫向擴展字符及基本字符的縱向擴展字符中的至少一者。
根據本發明的態樣,提供一種字型產生裝置。裝置可包含:字型產生器(font generator),藉由使用多個字符來產生字型;以及字符產生器(glyph generator),預產生用於實現字型的多個基本字符,且關於選自多個基本字符的至少兩個基本字符來執行內插運算,以產生形狀不同於基本字符的內插字符。字型產生器可藉由使用經預產生的基本字符及藉由內插運算而產生的內插字符中的至少一者來產生字型。
根據本發明的態樣,提供一種電腦可讀儲存媒體,儲存用於執行如前述的字型產生裝置的功能的程式。
根據本發明的態樣,提供一種網頁字型伺服器,包含如前述的字型產生裝置。
根據如上文所描述的本發明,可使用僅較少量的字符來產生字符的各種形狀。因此,可減少包含於字型中的字符的數目,以減少用於儲存字型的儲存空間且減少字型傳輸量(font transmission amount)。又,可減少為形成字符所花費的時間。
100‧‧‧字素的字符集合
110‧‧‧第一基本字符
120‧‧‧第二基本字符
130‧‧‧第三基本字符
140‧‧‧第四基本字符
1000‧‧‧字型產生裝置
1100‧‧‧控制器
1200‧‧‧字型產生器
1300‧‧‧字符產生器
1310‧‧‧基本字符產生器
1320‧‧‧字元資訊分析器
1330‧‧‧內插處理器
1340‧‧‧內插字符輸出單元
1400‧‧‧字型傳輸器
1500‧‧‧資料庫(DB)
1510‧‧‧字型儲存單元
1520‧‧‧字符儲存單元
2000‧‧‧字符產生器
2100‧‧‧字符資訊接收器
2200‧‧‧拖曳資訊接收器
2300‧‧‧資訊分析器
2310‧‧‧基本字符選擇器
2320‧‧‧權重計算器
2400‧‧‧內插處理器
2500‧‧‧內插字符產生器
2600‧‧‧組合字符產生器
3000‧‧‧網頁字型系統
3100‧‧‧網頁字型伺服器
3200‧‧‧網頁用戶端
A‧‧‧第一定界框
B‧‧‧第二定界框
C‧‧‧第一定界框
D‧‧‧第二定界框
E‧‧‧第三定界框
S11‧‧‧操作
S12‧‧‧操作
S13‧‧‧操作
S14‧‧‧操作
S15‧‧‧操作
S21‧‧‧操作
S22‧‧‧操作
S23‧‧‧操作
S24‧‧‧操作
S25‧‧‧操作
S26‧‧‧操作
S31‧‧‧操作
S32‧‧‧操作
S33‧‧‧操作
S34‧‧‧操作
S35‧‧‧操作
圖1為說明字素的一般字符集合的方塊圖。
圖2為根據本發明的實施例的說明字素的字符集合的方塊 圖。
圖3為根據本發明的實施例的說明用於產生字符的各種形狀的內插運算的視圖。
圖4為根據本發明的另一實施例的說明用於產生字符的各種形狀的內插運算的視圖。
圖5A及圖5B為根據本發明的實施例的說明字型產生裝置的方塊圖。
圖6為根據本發明的實施例的說明操作字型產生裝置的方法的流程圖。
圖7A至圖7D為根據本發明的實施例的說明使用定界框(bounding box)以產生內插字符的使用者介面的視圖。
圖8為根據本發明的另一實施例的說明字型產生裝置的方塊圖。
圖9為根據本發明的實施例的說明網頁字型系統(web font system)的方塊圖。
圖10為根據本發明的另一實施例的說明字符產生方法的流程圖。
圖11為根據本發明的另一實施例的說明字符產生方法的流程圖。
參看用於說明本發明的實施例的附加圖式,以便取得對本發明、其優點以及藉由實施本發明而實現的目標的充分理解。
在下文中,將藉由參看附加圖式而解釋本發明的實施例 來詳細地描述本發明。圖式中的類似圖式元件符號表示類似元件。
圖1為說明字素的一般字符集合的方塊圖。如圖1所展示,可由一個字型實現的字元可具有各種形狀。舉例而言,若經由一或多個字素的組合來實現一個字元,比如,在韓文的狀況下,則需要用於關於每一字素的開端子音、中間母音及尾端子音的字符。又,根據哪一開端子音是與哪一中間母音及尾端子音組合而需要字符的各種形狀。
舉例而言,圖1說明經產生以對應於字素「」的多個字符的實例。如圖1所展示,產生多個相似字符且將多個相似字符包含於字型產生裝置中。又,選擇針對由字型表達的字元而分別儲存的多個字符中的一者以產生對應字元的字型。然而,根據此方法,在產生相似字符方面存在限度。儘管產生被應用有上述字符的字型,但難以根據對應字型來表達詳細字元。
圖2為根據本發明的實施例的說明字素的字符集合100的方塊圖。
如圖2所展示,根據本實施例,將預設定數目個基本字符應用於一個字素。圖2的字符集合100包含對應於「」的多個字符,「」為韓文的一個字素。可預產生及預儲存圖2的字符集合100的三個或大於三個基本字符。舉例而言,可預產生四個基本字符110、120、130及140,且接著將四個基本字符110、120、130及140儲存於字型產生裝置中。
在韓文中,子音字素「」、「」及「」可形成橫向搜集字元(transverse gathering character)、縱向搜集字元(longitudinal gathering character)及尾端子音的三種設計,且開端 子音字素可形成橫向搜集字元及縱向搜集字元的兩種設計以及一種設計「口」或類似者。母音字素可形成具有尾端子音的兩種設計以及不具有尾端子音的兩種設計。在此狀況下,可設計總計僅21*2+19*2(約80)個基本字符。又,基本字符可包含80個橫向擴展基本字符、80個縱向擴展基本字符,以及80個橫向及/或縱向擴展基本字符,以設計總計320個基本字符。可藉由使用如上文所描述而設計的基本字符來產生將用於韓文的11,172個字元的字符的所有形狀。可藉由稍後將描述的使用320個基本字符的內插運算來產生字符的所有形狀。
再次參看圖2,產生四個基本字符110至140且將四個基本字符110至140儲存於系統中以對應於字素「」。可按原狀儲存四個基本字符110至140以實現字型,或可儲存四個基本字符110至140以藉由使用四個基本字符110至140來產生字符的其他形狀。在四個基本字符110至140當中,第一基本字符110可對應於字符的基本形狀,第二基本字符120可為第一基本字符110的橫向擴展字符,第三基本字符130可為第一基本字符110的縱向擴展字符,且第四基本字符140可為第一基本字符110的橫向及/或縱向擴展字符。
四個基本字符110至140可具有用於表達實際字元以使得實際字元具有對應字符形狀的座標資訊(coordinate information)。因此,與第一基本字符110相比較,第二基本字符120可具有用於表達具有相同厚度但在橫向方向上擴展的字元的座標資訊。相似地,第三基本字符130可具有用於形成縱向地擴展的字元的座標資訊,且第四基本字符140可具有用於表達橫向 地及縱向地擴展的字元的座標資訊。
在圖2的字符集合100中,可預產生僅第一基本字符110至第四基本字符140且將第一基本字符110至第四基本字符140儲存於字型產生裝置中,且可藉由使用第一基本字符110至第四基本字符140中的至少一者來產生其他字符。舉例而言,運用(a)而展示的字符為在橫向方向上擴展且可藉由使用第一基本字符110及第二基本字符120的內插運算而產生的字符。換言之,當產生用於表達每一字元或字素的字型時,可改變用於表達每一字素的字符的形狀。若根據(a)的字符來表達字素「」,則可對第一基本字符110及第二基本字符120進行內插以產生(a)的字符。由於藉由對第一基本字符110及第二基本字符120進行內插來產生(a)的字符,故(a)的字符可具有根據對第一基本字符110的座標資訊及第二基本字符120的座標資訊執行的運算的結果而產生的座標資訊。
若根據(b)的字符來表達字素「」,則可對第一基本字符110及第三基本字符130進行內插以產生(b)的字符。(b)的字符為具有在字素「」的基本字符與字素「」的縱向擴展基本字符之間的形狀的字符。可對第一基本字符110的座標資訊及第三基本字符130的座標資訊執行運算,以計算用於表達(b)的字符的座標資訊。又,若根據(c)的字符來表達字素「」,則可對第一基本字符110及第四基本字符140進行內插以產生(c)的字符。
若根據(d)的字符來表達字素「」,則可對第一基本字符110至第三基本字符130進行內插以產生(d)的字符。為 此,可對第一基本字符110及第二基本字符120進行內插以產生適當橫向擴展字符,且可將適當橫向擴展字符內插至第三基本字符130中以產生(d)的字符。換言之,可對第一基本字符110至第三基本字符130的座標資訊執行運算,且可根據運算的結果來產生用於表達(d)的字符的座標資訊。
上文所描述的圖2的字符可為一個字素的字符,亦即,可被稱為單字符(single glyph)。換言之,字符可包含第一字符110至第四字符140,以及藉由對第一基本字符110至第四基本字符140中的至少兩者進行內插而產生的字符。又,當產生字符時,可產生至少兩個字素被組合成的組合式字符。舉例而言,可基於每一字素的基本字符來執行內插運算,且可組合兩個或大於兩個單字符以產生組合式字符。
如上文所描述,將僅一些基本字符預儲存於字型產生裝置中,且可在由對應字型表達的字元的基本字符之間執行內插運算以產生字符的各種形狀。因此,可在不產生及儲存大量字符的情況下實現可供以各種形狀來表達字元的字型。根據如上文所描述的字符產生方法,當開發字型時,可急劇地減少為形成字型所花費的時間,且可形成大量高品質字型。
在上述實施例中,僅已描述包含一個字型的字符。然而,本發明的實施例不限於此情形。舉例而言,字型產生裝置可產生多個字型,且可將根據本發明的實施例的字符產生方法應用於多個字型中的每一者。
又,在上述實施例中,除了基本字符以外,亦在系統中藉由內插運算來產生字符(內插字符)。然而,可提供用於產生實 際字符的使用者介面作為圖形工具,諸如,定界框或類似者。舉例而言,可提供用於每一字素的定界框,可由使用者輸入定界框的拖曳資訊(drag information),且可基於輸入拖曳資訊來執行內插運算以產生內插字符。
在圖2的字符集合中,可基於關於每一字符的多個座標資訊片段而不基於字符的線(或邊界)來執行內插運算。因此,基本字符與內插字符之間的厚度可實質上相同,或可在產生具有適當形狀的字符的限度內擴展或減少。換言之,若經由關於字符而執行的諸如擴展及/或減少或類似者的調整來產生經修改的字符,則可使字符的厚度過度地減薄或增厚,且因此可產生不適於產生字型的字符。
圖3為根據本發明的實施例的說明用於產生各種形狀的字符的內插運算的視圖。如圖3所展示,提供四個基本字符以對應於一個字素。第一基本字符110為基本字符,第二基本字符120為基本字符的橫向擴展字符,第三基本字符130為基本字符的縱向擴展字符,且第四基本字符140為基本字符的橫向及/或縱向擴展字符。可藉由使用第一基本字符110至第四基本字符140的內插運算來產生(m+1)*(n+1)個字符。
此處,可將第一基本字符110的位置定義為(0,0),可將第二基本字符120的位置定義為(m,0),可將第三基本字符130的位置定義為(0,n),且可將第四基本字符140的位置定義為(m,n)。第一基本字符110至第四基本字符140中的每一者可包含用於根據對應形狀來表達字元的座標資訊。
為了實現字型,可分析字元中的各別字素的組合形式, 以選擇用於表達字素的字符。舉例而言,若藉由基本字符中的一者來表達字素,則可在無額外內插運算的情況下使用對應基本字符來實現對應字素的字型。若根據不在基本字符當中的另一字符來表達對應字素,則可藉由使用基本字符的內插運算來產生必要字符,且可藉由使用必要字符來產生對應字素的字型。
當產生必要字符時,可選擇用於橫向擴展的必要字符的位置。可選擇在第一基本字符110的位置(0,0)與第二基本字符120的位置(m,0)之間的位置作為必要字符的位置。若選擇對應位置,則可藉由使用第一基本字符110及第二基本字符120的內插運算來產生對應於選定位置的橫向擴展字符。
相似於此情形,當選擇用於縱向擴展的必要字符的位置時,可選擇在第一基本字符110的位置(0,0)與第三基本字符130的位置(0,n)之間的位置。又,可藉由使用第一基本字符110及第三基本字符130的內插運算來產生對應於選定位置的縱向擴展字符。相似於此情形,可產生對應於在第一基本字符110的位置(0,0)與第四基本字符140的位置(m,n)之間的位置的橫向及/或縱向擴展字符。
在圖3的實施例中描述用於一個基本字符的一個代表性座標,但本發明的實施例不限於此情形。舉例而言,為了實現一個字符,可針對每一字符而包含多個座標資訊片段,且可對兩個或大於兩個基本字符的對應座標資訊執行運算以執行內插運算,以便產生內插字符。
圖4為根據本發明的實施例的說明用於產生字符的各種形狀的內插運算的視圖。在圖4的實施例中,藉由僅使用基本字 符以及橫向擴展基本字符及縱向擴展基本字符來產生一個字素的所有字符。
舉例而言,如圖4所展示,提供三個基本字符以對應於字素「」,第一基本字符為基本字符,第二基本字符120為基本字符的橫向擴展字符,且第三基本字符130為基本字符的縱向擴展字符。可藉由使用三個基本字符的內插運算來產生(m+1)*(n+1)個字符。
當藉由使用三個基本字符來產生必要字符時,可藉由對第一基本字符110及第二基本字符120進行內插來產生第一基本字符110的橫向擴展字符。又,可藉由對第一基本字符110及第三基本字符130進行內插來產生第一基本字符110的縱向擴展字符。可對第一基本字符110、第二基本字符120及第三基本字符130的全部進行內插以產生第一基本字符110的橫向及/或縱向擴展字符。第一基本字符110的橫向及縱向擴展字符可對應於上述實施例中的第四基本字符。又,可僅對第二基本字符120及第三基本字符130進行內插以產生形狀與圖4中的第四基本字符相同的字符。
圖5A及圖5B為根據本發明的實施例的說明字型產生裝置1000的方塊圖。圖5A及圖5B的方塊圖說明裝置1000中用於產生字符的各種類型的功能。可將圖5A及圖5B的各種類型的功能實現為裝置或軟體。
如圖5A所展示,裝置1000包含控制器(controller)1100、字型產生器1200、字符產生器1300、字型傳輸器(font transmitter)1400,以及資料庫(database,DB)1500。資料庫1500可包含字 型儲存單元(font storage unit)1510以及字符儲存單元(glyph storage unit)1520。
控制器1100控制裝置1000的系統的整體操作。舉例而言,控制器1100可控制圖5A的各種類型的其他功能區塊的操作,控制功能區塊之間的資訊傳輸,產生基本字符,經由在基本字符之間執行的內插運算來產生字符,且藉由使用經產生的字符來產生字型。
字型產生器1200可產生用於表達各種類型的語言的一或多個字型,且藉由使用多個字符來分別產生字型。如上文所描述,若根據字素組合來表達字元,則可根據每一字素而藉由使用額外字符來產生字型。又,根據字元中的字素的組合形式可存在多個字符,且因此可將多個字符中的每一者不同地應用於一個字素以產生字型。
根據上述實施例,字符產生器1300可產生字符。舉例而言,可預產生多個基本字符,且將基本字符儲存於系統中(或字符儲存單元1520中)以對應於一個字素。若需要具有不同形狀的字符以產生字型,則字符產生器1300可基於使用者的輸入資訊來執行使用基本字符的內插運算,且根據內插運算的結果來產生形狀不同於基本字符的字符(內插字符)。經預產生的基本字符可包含具有一個字素的基本形狀的第一基本字符、具有基本形狀的橫向擴展形狀的第二基本字符、具有基本形狀的縱向擴展形狀的第三基本字符,以及具有基本形狀的橫向及/或縱向擴展形狀的第四基本字符。或者,根據另一實施例,如上文所描述,可產生僅第一基本字符至第三基本字符以對應於每一字素,或可產生不同數 目個基本字符(例如,較大數目個基本字符)。
字符產生器1300可對多個基本字符中的至少兩者執行內插運算,以產生如圖2所展示的字符的各種形狀。基本字符可儲存於字符儲存單元1520中,且字符產生器1300可藉由使用儲存於字符儲存單元1520中的基本字符來執行內插運算。字型產生器1200可藉由使用儲存於字符儲存單元1520中的基本字符及由字符產生器1300產生的內插字符來產生字型。由字型產生器1200產生的字型可儲存於字型儲存單元1510中。
字型傳輸器1400可經由外部介面(例如,諸如網際網路或類似者的網路)將字型傳輸至字型顯示裝置(font display apparatus)(未圖示)。若基於網頁來傳輸字型,則裝置1000可為網頁字型伺服器(web font server),且經由網頁來接收字型的字型顯示裝置可為網頁用戶端(web client)。裝置1000可將經預產生的字型傳輸至網頁用戶端,或可即時產生對應字型,且在自網頁用戶端接收到針對字型的請求時將字型傳輸至網頁用戶端。
根據本實施例的裝置1000藉由使用僅極少量的字符來產生字符的各種形狀,且因此可減少為形成字型所花費的時間。因此,可藉由使用僅少量的字符來有效地產生經預儲存的字型,且即使即時請求字型的形成及傳輸,亦可在無任何大的延遲的情況下產生字型且將字型提供至網頁用戶端。
圖5B為根據本發明的實施例的說明圖5A的字符產生器1300的方塊圖。如圖5B所展示,字符產生器1300包含基本字符產生器(basic glyph generator)1310、字元資訊分析器(character information analyzer)1320、內插處理器(interpolation processor) 1330,以及內插字符輸出單元(interpolation glyph output unit)1340。
基本字符產生器1310可產生如上文所描述的對應於每一字元或每一字素的多個基本字符,例如,可產生一個基本形狀字符以及基本形狀字符的橫向及/或縱向擴展基本字符。字元資訊分析器1320可分析將由字型在實現對應字型時實現的字元以及包含於字元中的每一者中的字素的資訊,以選擇將應用於對應字元或字素的字符。
內插處理器1330基於經分析的字元資訊來執行內插運算,以產生用於表達對應字元或字素的字符。內插運算可基於使用多個經預產生的基本字符中的至少兩者的內插運算。經由內插字符輸出單元1340將如上文所描述而內插的字符提供至字型產生器1200,且字型產生器1200藉由使用字符的各種形狀來產生字型。
圖6為根據本發明的實施例的說明操作字型產生裝置的方法的方塊圖。在圖6中,根據字素的組合來表達字元,且藉由使用經產生以對應於每一字素的字符來實現字型。
如圖6所展示,在操作S11中,產生每一字素的第一基本字符。第一基本字符對應於對應字素的基本形狀字符。在操作S12中,產生與第一基本字符相關的第二基本字符至第a基本字符。經產生的字符的數目可為3、4或大於4。舉例而言,可產生與第一基本字符相關的第二基本字符至第四基本字符。在此等基本字符當中,第二基本字符可為第一基本字符的橫向擴展字符,第三基本字符可為第一基本字符的縱向擴展字符,且第四基本字 符可為第一基本字符的橫向及/或縱向擴展字符。
在操作S13中,在形成字型時分析每一字元資訊。字元資訊的分析操作可執行分析包含於對應字元中的字素、對應字元中的字素中的每一者的所應用位置等等的操作。因此,可選擇包含於對應字元中的字素中的每一者的字符,且字符可為包含於第一基本字符至第四基本字符中的字符或第一基本字符至第四基本字符被修改成的字符。
在操作S14中,基於上述分析操作而藉由使用基本字符來執行內插運算。可基於圖2的實施例來執行內插運算以藉由使用基本字符來產生字符的各種形狀。若如上文所描述而產生內插字符,則在操作S15中,藉由使用基本字符及內插字符來完全地產生字型。
圖7A至圖7D為根據本發明的實施例的說明藉由使用經提供以產生內插字符的定界框的使用者介面的視圖。圖7A及圖7B說明韓文的字素「」的字符,且圖7C及圖7D說明字素「金」的字符,「金」為意謂「金」的中文字元。
如圖7A所展示,由使用者選擇多個經預儲存的基本字符中的一者,以產生內插字符。可將選定基本字符定義為主字符(master glyph),且根據選擇而在第一定界框A中表達主字符。
使用者選擇第一定界框A的邊界或頂點,且拖曳選定邊界或頂點以調整定界框A。由使用者調整的定界框可被稱為第二定界框B,且在系統中分析由使用者輸入的資訊(例如,拖曳資訊)。在圖7A中,藉由橫向地及縱向地擴展第一定界框A來形成第二定界框B,且因此修改字素「」的字符的形狀 以對應於第二定界框B。可根據使用者的儲存命令或類似者將形狀被修改的字符儲存為內插字符,且因此進一步產生字符且將字符儲存於系統中。
可選擇選定主字符及至少一個基本字符以產生內插字符,且可藉由使用主字符及選定基本字符來執行內插運算。一個字符是可由多個座標形成,且因此包含關於多個座標的資訊。又,將權重應用於多個字符(包含主字符及基本字符)的對應座標資訊以執行運算,以便執行內插運算。另外,產生具有根據運算的結果而計算的新座標資訊的內插字符。在圖7中,主字符及內插字符可實質上具有相同厚度,且與主字符相比較,內插字符可具有橫向地及縱向地擴展的形狀。
圖7B將字「」的字型說明為組合字符的實例。為了形成字元「」,可選擇字素「」、「」及「」的字符作為主字符,且可在字素中的每一者的定界框中表達主字符。
舉例而言,可表達字素「」的第一定界框C、字素「」的第二定界框D以及字素「」的第三定界框E,且使用者可經由每一定界框的拖曳輸入來實現字型。可分析根據每一定界框的拖曳輸入而產生的資訊,可根據拖曳輸入的結果將每一字素修改成諸如橫向擴展及/或縮減形狀、縱向擴展及/或縮減形狀、橫向及縱向擴展及/或縮減形狀或類似者的形狀。
圖7C說明字素「金」的多個基本字符中的一者,「金」為經選擇及表達為主字符的中文字元。相似於上文所描述的圖7A的實施例,在第一定界框A中表達選定主字符,且使用者選擇第一定界框A的邊界或頂點且拖曳選定邊界或頂點以調整定界框。 舉例而言,可選擇縱向擴展基本字符作為第一定界框A中的主字符,且可經由拖曳操作將第一定界框A調整為第二定界框B。因此,可產生主字符的橫向擴展且縱向縮減的內插字符。
圖7D說明被實現為組合式字符的實例的中文字元「釗」的字型。為了形成中文字元「釗」,可選擇字素「金」及「刀」的字符作為主字符,且可在字素中的每一者的定界框中表達主字符。舉例而言,產生第一定界框C及第二定界框D,在第一定界框C及第二定界框D中分別表達字素「金」及「刀」。可分析關於每一定界框的使用者拖曳資訊,以改變主字符「金」及「刀」的形狀。結果,可實現由具有不同形狀的字符形成的字型。
圖8為根據本發明的另一實施例的說明字型產生裝置的方塊圖。舉例而言,將字符產生器2000說明為圖8中的裝置的元件,且如上文參看圖5A所描述的其他元件可更包含於裝置中。
字符產生器2000包含字符資訊接收器(glyph information receiver)2100、拖曳資訊接收器(drag information receiver)2200、資訊分析器(information analyzer)2300、內插處理器(interpolation processor)2400、內插字符產生器(interpolation glyph generator)2500,以及組合字符產生器(combination glyph generator)2600。又,資訊分析器2300可包含基本字符選擇器(basic glyph selector)2310以及權重計算器(weight calculator)2320。在圖8中,將字符產生裝置的元件說明為不同功能區塊。可將圖8的各種類型的元件中的至少兩者實現為一個功能區塊,可將一個功能區塊劃分成兩個或大於兩個功能區塊,或可將圖8的各種類型的元件實現為軟體。
字符資訊接收器2100接收由使用者選擇的字符的資訊。舉例而言,可預產生每一字符的兩個或大於兩個基本字符,且將兩個或大於兩個基本字符預儲存於資料庫中。若使用者想要產生預設定字符的內插字符,則可接收選自包含於字符中的多個基本字符的一個基本字符的資訊。根據選定資訊來輸出一個基本字符作為定界框中的主字符。
使用者可拖曳定界框以產生經改變的定界框,且拖曳資訊接收器2200接收與使用者的拖曳操作相關的資訊。舉例而言,如上文所描述,使用者可選擇及拖曳定界框的邊界或頂點以改變定界框。可根據經最初選擇的主字符的形狀(基本形狀、橫向擴展形狀、縱向擴展形狀、橫向及/或縱向擴展形狀等等)來判定第一定界框的大小。又,可接收第二定界框的資訊作為拖曳資訊,第二定界框具有根據第一定界框的資訊(例如,實現第一定界框的座標資訊)及使用者的拖曳操作而調整的形狀。
資訊分析器2300可分析拖曳資訊且輸出分析的結果。舉例而言,基本字符選擇器2310可分析拖曳資訊以選擇內插運算所必要的基本字符。若選擇基本字符作為主字符,且使用者橫向地擴展第一定界框,則除了主字符以外,橫向擴展基本字符亦可為內插運算所需要,且基本字符選擇器2310可輸出指示此情形的分析結果。權重計算器2320計算及輸出用於內插運算的權重。舉例而言,若將由使用者調整的第二定界框調整至相似於橫向擴展基本字符的形狀,則橫向擴展基本字符相比於主字符具有相對較大的權重。
內插處理器2400根據上述資訊分析結果來執行內插運 算。舉例而言,內插處理器2400藉由使用包含於主字符中的座標資訊、包含於選定基本字符中的座標資訊以及經計算的權重來執行內插運算,且輸出內插運算的結果(例如,根據內插運算而計算的座標資訊)。內插字符產生器2500可產生具有根據內插運算的結果而形成的形狀的內插字符,且組合字符產生器2600可組合經由上述程序而產生的兩個或大於兩個字符,以產生組合字符。將內插字符產生器2500及組合字符產生器2600說明為不同功能區塊。然而,如上文所描述,可根據系統的實現而經由同一功能區塊來執行此功能。
圖9為根據本發明的實施例的說明網頁字型系統3000的方塊圖。如圖9所展示,網頁字型系統3000包含網頁字型伺服器3100以及網頁用戶端3200。網頁字型伺服器3100可包含如上述實施例中的字型產生裝置。網頁字型伺服器3100可經由網路而與網頁用戶端3200通信,以提供字型、子集字型或類似者。又,當傳輸字型時,網頁字型伺服器3100可傳輸關於構成字型的字符的資訊連同字型。
根據本發明的實施例,可顯著地減少為實現字型所必要的字符的總數。因此,當經由網路來傳輸字型時,可減少經傳輸的資訊的總量。
圖10為根據本發明的另一實施例的說明字符產生方法的流程圖。如圖10所展示,使用者可選擇將用於字型的字符,在定界框中表達選定字符時拖曳字符以改變字符的形狀,且儲存具有經改變的形狀的字符。若判定一個字素,則在操作S21中,選擇包含於字素中的多個基本字符中的一者作為主字符,以接收關於 選定主字符的資訊。
在操作S22中,在定界框中表達主字符,且使用者拖曳定界框以接收拖曳資訊。在操作S23中,分析拖曳資訊以選擇內插運算所必要的一或多個基本字符。換言之,除了主字符以外,亦可將兩個或大於兩個基本字符(或三個基本字符)進一步儲存於系統中,且可根據拖曳資訊來選擇將用於內插運算的一或多個基本字符。在操作S24中,分析拖曳資訊以計算將用於內插運算的多個基本字符(包含主字符)的權重。在操作S25中,藉由使用基本字符及經計算的權重來執行內插運算。在操作S26中,根據內插運算的結果來產生座標資訊,且藉由使用座標資訊來產生內插字符。
圖11為根據本發明的另一實施例的說明字符產生方法的流程圖。在圖11中,組合兩個或大於兩個字素以產生一個字元的字型。
可組合兩個或大於兩個字素以實現一個字元。因此,在操作S31中,使用者選擇兩個或大於兩個主字符以在定界框中分別輸出主字符。使用者拖曳定界框以改變各別字符,且因此,在操作S32中,接收使用者的拖曳資訊。
在操作S33中,分析主字符的定界框的拖曳資訊,以根據分析的結果來執行內插運算。在操作S34中,產生主字符的內插字符。若使用者重新調整定界框,則可重新執行內插運算以產生具有經改變的形狀的內插字符。使用者可檢查輸出內插字符以判定是否將儲存內插字符。在操作S35中,將輸出內插字符儲存為新字符以產生對應內插字符作為最終組合字符。
雖然已參考本發明的例示性實施例特定地展示及描述本發明,但於本領域具有通常知識者將理解,在不脫離如由以下申請專利範圍界定的本發明的精神及範圍的情況下,可在本發明中進行各種形式及細節改變。

Claims (10)

  1. 一種字型產生方法,所述字型產生方法包含:產生第一基本字符作為字元或字素的基本形狀;對應所述基本形狀的橫向擴展形狀來產生第二基本字符,並對應所述基本形狀的縱向擴展形狀來產生第三基本字符;藉由使用所述第一基本字符至所述第三基本字符中的至少兩者來執行內插運算,以產生形狀不同於所述第一基本字符至所述第三基本字符的內插字符;以及藉由使用所述第一基本字符至所述第三基本字符以及所述內插字符來產生字型,其中,所述內插字符的形狀是藉由改變所述第一基本字符的形狀來決定,並依據所述第一基本字符的改變後形狀來選擇所述第二基本字符及所述第三基本字符中的至少其中之一,且依據針對所述第一基本字符以及選中基本字符進行所述內插運算來產生所述內插字符。
  2. 如申請專利範圍第1項所述的字型產生方法,更包含:分析所述字型被實現的字元的資訊,其中根據分析的結果來選擇所述第一基本字符至所述第三基本字符中的至少兩者以執行所述內插運算,以便產生所述內插字符。
  3. 如申請專利範圍第1項所述的字型產生方法,更包括:對應所述基本形狀的橫向擴展形狀以及縱向擴展形狀來產生第四基本字符,其中,所述內插基本字符是針對所述第一基本字符至所述第四基本字符的至少其中之二來進行所述內插運算所產生。
  4. 如申請專利範圍第1項所述的字型產生方法,其中所述第一基本字符的形狀依據拖曳操作來進行改變,所述第二基本字符及所述第三基本字符中的至少其中之一基於拖曳資訊來進行選擇,而所述內插字符是針對所述第一基本字符以及所述選中基本字符進行所述內插運算來產生。
  5. 如申請專利範圍第4項所述的字型產生方法,其中,依據所述拖曳資訊應用於所述第一基本字符的權重不同於應用於所述選中基本字符的權重,且具有不同形狀的所述內插字符是依據應用的所述多個權重所產生。
  6. 如申請專利範圍第1項所述的字型產生方法,其中,所述第一基本字符至所述第三基本字符的厚度與所述內插字符的厚度相同。
  7. 一種字型產生裝置,所述字型產生裝置包含:字型產生器,藉由使用多個字符來產生字型;以及字符產生器,對應於字元或字素的基本形狀並依據所述基本形狀的橫向擴展及縱向擴展來預產生用於實現所述字型的多個基本字符,且關於選自所述多個基本字符的至少兩個基本字符來執行內插運算,以產生形狀不同於所述基本字符的內插字符,所述字符產生器產生第一基本字符至第三基本字符,其中所述字型產生器藉由使用經預產生的所述基本字符及藉由所述內插運算而產生的所述內插字符中的至少一者來產生所述字型,其中所述第一基本字符為對應於字元或字素的所述基本形狀的字符,所述第二基本字符為所述基本形狀的橫向擴展字符,且所述第三基本字符為所述基本形狀的縱向擴展字符,以及其中,所述內插字符的形狀是藉由改變所述第一基本字符的形狀來決定,並依據所述第一基本字符的改變後形狀來選擇所述第二基本字符及所述第三基本字符中的至少其中之一,且依據針對所述第一基本字符以及選中的基本字符進行所述內插運算來產生所述內插字符。
  8. 如申請專利範圍第7項所述的字型產生裝置,其中所述字符產生器包含:字元資訊分析器,分析所述字型被實現的字元的資訊;以及內插處理器,根據分析的結果來選擇至少兩個基本字符以執行所述內插運算。
  9. 一種電腦可讀儲存媒體,儲存用於執行如申請專利範圍第7項所述的字型產生裝置的功能的程式。
  10. 一種網頁字型伺服器,包含如申請專利範圍第7項所述的字型產生裝置。
TW102146037A 2013-12-12 2013-12-12 字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器 TWI623841B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW102146037A TWI623841B (zh) 2013-12-12 2013-12-12 字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW102146037A TWI623841B (zh) 2013-12-12 2013-12-12 字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器

Publications (2)

Publication Number Publication Date
TW201523295A TW201523295A (zh) 2015-06-16
TWI623841B true TWI623841B (zh) 2018-05-11

Family

ID=53935660

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102146037A TWI623841B (zh) 2013-12-12 2013-12-12 字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器

Country Status (1)

Country Link
TW (1) TWI623841B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5468077A (en) * 1993-07-16 1995-11-21 Fujitsu Limited Method and apparatus for combining characters
TW434493B (en) * 1998-02-23 2001-05-16 Dynalab Inc Stroke-based glyph-outline font generation in low/high resolution space
US20050237342A1 (en) * 1998-10-07 2005-10-27 Beat Stamm Automatic optimization of the posistion of stems of text characters
US20110025693A1 (en) * 2009-07-28 2011-02-03 Bruce Merry Graphics processing systems
TWI352298B (en) * 2008-07-24 2011-11-11 Arphic Technology Co Ltd Method for generating center-lined font from outli

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5468077A (en) * 1993-07-16 1995-11-21 Fujitsu Limited Method and apparatus for combining characters
TW434493B (en) * 1998-02-23 2001-05-16 Dynalab Inc Stroke-based glyph-outline font generation in low/high resolution space
US20050237342A1 (en) * 1998-10-07 2005-10-27 Beat Stamm Automatic optimization of the posistion of stems of text characters
TWI352298B (en) * 2008-07-24 2011-11-11 Arphic Technology Co Ltd Method for generating center-lined font from outli
US20110025693A1 (en) * 2009-07-28 2011-02-03 Bruce Merry Graphics processing systems

Also Published As

Publication number Publication date
TW201523295A (zh) 2015-06-16

Similar Documents

Publication Publication Date Title
EP2805258B1 (en) Low resolution placeholder content for document navigation
US20140285495A1 (en) Apparatus and Method for Generating Font by Using Glyph Interpolation
US20140325418A1 (en) Automatically manipulating visualized data based on interactivity
JP2011525029A (ja) 表形式データの階層的提示
KR20210060585A (ko) 폰트 렌더링 방법, 장치 및 컴퓨터 판독 가능 저장매체
US20150348278A1 (en) Dynamic font engine
US20150067538A1 (en) Apparatus and method for creating editable visual object
US20200134488A1 (en) Method for recommending next user input using pattern analysis of user input
JP4356752B2 (ja) 文書編集装置、プログラムおよび記憶媒体
EP3008620B1 (en) Tethered selection handle
CN108763188A (zh) 一种文本显示方法、装置、设备及存储介质
JPWO2018203374A1 (ja) 線画自動着色プログラム、線画自動着色装置及びグラフィカルユーザインターフェース用プログラム
JP6298422B2 (ja) マンマシンインターフェースのグラフィック表示用の文字列の処理技術
US10061752B2 (en) Method and apparatus for generating a font of which style is changeable
TWI623841B (zh) 字型產生方法、字型產生裝置、電腦可讀儲存媒體以及網頁字型伺服器
JP2008197990A (ja) 文書編集装置、プログラムおよび記憶媒体
WO2017002483A1 (ja) プログラム、情報処理装置、深度定義方法及び記録媒体
US9696818B2 (en) Bidirectional text selection
KR20160011326A (ko) 전자 악보 편집 시스템 그 제공방법
US10930045B2 (en) Digital ink based visual components
US20180012395A1 (en) Information processing apparatus, simulator result display method, and computer-readable recording medium
US9189872B2 (en) Bezier arc approximation spring system
KR101513009B1 (ko) 폰트 자동 생성 시스템 및 방법
JP2015075884A (ja) 描画装置、描画方法及びプログラム
JP6085197B2 (ja) 携帯情報処理装置、表示処理方法、表示処理プログラム

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees