漢字描述語言

漢字描述語言是指可以完整且準確地描述漢字字元和資訊的電腦語言,它們包含了字元的組成、(基本和複雜的)筆畫、順序以及位置,旨在克服在使用點陣圖來描述字形時所遇到的資訊缺乏。其所包含的訊息可以來識別字元(統一碼通用字元集統一為一個碼位)的異體字,或一些統一碼和通用字元集尚未收錄的罕見字。

它們的工作,大多是基於楷書宋體,來提供字元的內部結構,因而可以藉由索引字元的內部結構和相似字元,從而更容易地尋找字元。

字形描述語言 編輯

 
字元描述語言中,各層級的部件

字形描述語言(英語:Character Description Language,簡稱:CDL),或稱字描語,是基於XML字型技術,由畢曉普(英語:Tom Bishop)和 曲理查(英語:Richard Cook) 為文林研究所所共同建立。其目的在描述任何CJK 字元,但可用於描述任何字形

這種基於 XML 的宣告式語言定義了每個組件(字形的一個子單元,類似於部首,但不一定具有真正部首的語意意義)的筆順,以及使用先前定義的組件所構建更複雜的字元。除了用作構建組件之外,這些組件中的許多組件本身就是字元。

背景看起來像一個每邊128 像素的正方形。在這個背景下:

  1. 使用可縮放向量圖形,可繪製 50 個筆畫。
  2. 一個基本組件是通過呼叫數個筆畫來組成的。在此組件中,每個筆畫都由其左下角和右上角描述。可以進行轉換(縮小、放大等)。 。有 1,000 多個基本組件。
  3. 一個字元是通過呼叫幾個組件組成的。在這個字元中,每個組件都由其左下角和右上角描述。為了使組件適合漢字矩形塊的適當部分,在將部分嵌入構建方塊時,可以轉換(如:水平、重直或放大、縮小)。

因此,一組少於 50 個筆畫[1]允許構建一組大約 1,000 個組件[2] ,這些組件又可以嵌入到數萬個字元的描述中。 [2] 50 個基本筆畫之一的形狀變化隱含在嵌入該筆畫的每個字元中。同樣,對組件的更改隱式應用於其組合使用該組件的每個和所有角色。 [2]

湯姆·畢曉普和 R. Cook 解釋如下:

字元的筆劃數通常跟其它字元的筆劃數是有關的。大部分字元是以多個部件所構建。只要知道了每個部件的筆劃數,那總筆劃數只是單純地部件筆劃數相加。因此,如果有個標準定義了千多個字元的筆劃,它也定義了成千上萬個其它字元。[3]


截至2020年 (2020-Missing required parameter 1=month!),透過字描語包含了近 10 萬個字元描述,可完整支援統一碼 7.0。[3]

HanGlyph 編輯

用於在文件中提供缺失的罕見字(即外字問題)的漢字描述語言。 [4]文件可以包含缺失字元的標記,這將自動觸發生成小字型以提供字元。語言本身是一個簡單的字尾符號,描述了筆畫和組合它們的方式。原型軟體使用Metapost來描給字元並將它們嵌入到LaTeX文件中。該語言由 Wai Wong 於 1997 年提出 [5],2003年的 TeX使用者會議上,則有關於實作的論文。 [6] [7]

表意文字描述序列 編輯

統一碼第 12 章定義了「表意文字描述序列」(IDS) 的語法[8],旨在用於描述標準中未包含的字元,即根據具有代碼點的組件組合。 U+2FF0 到 U+2FFB 範圍內的十二個特殊字元充當字首運算子,以組合其他字元或序列以形成更大的字元。

統一碼中的表意文字描述字元
特點 統一碼字元編號 完整的統一碼名稱
U+2FF0 Ideographic description character left to right

表意文字字元用於左右結構

U+2FF1 Ideographic description character above to below

表意文字字元用於上下結構

U+2FF2 Ideographic description character left to middle and right

表意文字字元用於左中右結構

U+2FF3 Ideographic description character above to middle and below

表意文字字元用於上中下結構

U+2FF4 Ideographic description character full surround

表意文字字元用於全包圍結構

U+2FF5 Ideographic description character surround from above

表意文字字元用於從上方包圍結構

U+2FF6 Ideographic description character surround from bellow

表意文字字元用於從下方包圍結構

U+2FF7 Ideographic description character surround from left

表意文字字元用於從左方包圍結構

U+2FF8 Ideographic description character surround from upper left

表意文字字元用於從左上角環繞

U+2FF9 Ideographic description character surround from upper right

表意文字字元用於從右上方環繞

U+2FFA Ideographic description character surround from lower left

表意文字字元用於從左下角環繞

U+2FFB Ideographic description character overlaid

表意文字字元用於交錯

這些序列對於向讀者描述無法直接顯示的字元很有用,因為它在給定字型中不存在,或者完全不存在於統一碼標準中。例如,方塊壯字 字元「 」(在中日韓統一表意文字擴充 F 中編碼為 U+2DA21 𭨡),可以描述成「⿰書史」。另一個用途是用於尋找字典,即作為用來輸入查詢的一種簡略輸入法

這些序列的呈現方式,可以是分別地保留所有字元,或通過解析序列後來繪製目標字元。 [9]它們本身並不能為所有字元提供明確的描繪。例如,序列「⿱十一」代表「土」和「士」。方式

這些序列的統一碼規範基於早期GBK標準的字元和語法。

Matthew Skala 提供的自由軟體套件 IDSgrep[10] [11] 擴充了統一碼的表意文字描述序列語法,包括用於字典尋找的附加功能;它能夠將 KanjiVG 的資料庫轉換為它自己的擴充 IDS 格式,或者針對由相關的 Tsukurimashou 字型所生成的 EIDS 檔案來搜尋。

KanjiVG 編輯

KanjiVG 是一種自由 (CC-by-sa-3.0) 日語字元描述語言(旨在最終擴充到中文),它是基於SVG和維基編輯系統。

SCML 編輯

2007年,結構字元建模語言是另一個基於XML的漢字描述語言,其定位不像字描語和HanGlyph那樣基於數字網格。其資料庫所使用的筆畫、部件是以 SCML 編碼。其資料庫儘用於原理演示,目前沒有已知的嘗試將 SCML 套用在所有的統一碼,為 CJK 字元進行編碼。

參見 編輯

外部連結 編輯

文林學院CDL語言
SCML
字形

參考資料 編輯

  1. ^ Bishop & Cook 2013-12-31:p2
  2. ^ 2.0 2.1 2.2 Bishop & Cook 2013-12-31:p9
  3. ^ 3.0 3.1 文林字形描述語言. [2021-11-29]. (原始內容存檔於2021-11-29). 
  4. ^ HanGlyph. [17 February 2012]. (原始內容存檔於24 January 2013). 
  5. ^ Wong, Wai. HanGlyph – a Chinese Character Description Language (PDF). Proceedings of the Seventeenth International Conference on Computer Processing of Oriental Languages, Hong Kong. April 1997. (原始內容 (PDF)存檔於2021-08-23). 
  6. ^ Yiu, Candy L. K.; Wai Wong. Chinese Character Synthesis using METAPOST (PDF). Proceedings of the 24th Annual Meeting and Conference of the TeX User Group, Hawaii, U.S.A. July 2003. (原始內容 (PDF)存檔於2011-07-26). 
  7. ^ Wong, Wai; Candy L. K. Yiu; Kelvin, C. F. Ng. Typesetting Rare Chinese Characters in LaTeX (PDF). Proceedings of the 14th European TeX Conference, Brest, France. June 2003. (原始內容 (PDF)存檔於2011-11-06). 
  8. ^ 存档副本 (PDF). [2021-11-29]. (原始內容存檔 (PDF)於2019-11-22). 
  9. ^ The Unicode® Standard – Version 12.0 – Core Specification (PDF). Unicode Consortium. March 2019 [2021-11-29]. (原始內容存檔 (PDF)於2020-11-12). 
  10. ^ Tsukurimashou Font Family and IDSgrep Project Top Page - OSDN. [2021-11-29]. (原始內容存檔於2015-03-25). 
  11. ^ Skala, Matthew. A Structural Query System for Han Characters (PDF). International Journal of Asian Language Processing. 2015, 23 (2): 127–159 [2016-01-13]. arXiv:1404.5585 . (原始內容 (PDF)存檔於2016-03-04).