User:Shoichi

維基文庫,自由的圖書館

User:Shoichi/template:Ruby

動態組字服務測試[编辑]

在放置古籍的時候,總是會煩惱缺字的問題,以往只能用圖片法解決,但圖片沒有文字的組成資訊,無法搜尋也無法定序。或者乾脆留空,這也是不行。

台灣的維基協會與G0V萌典計畫合作,現在正在處理吳守禮紙本的國臺對照活用辭典紙本,將之現代化、數位化放進wikisource,就遇到了這個問題,因為裡面有300多個unicode也沒有收的漢字,由於現在動態組字有成熟的開源引擎:漢字組建了,所以就開始進行相關的處理與測試。

目前server已經佈署到基金會的實驗室 server上進行測試[1]

搭載於mediawiki上的測試[编辑]

以下是在敝人自己電腦上的mediawiki上測試的結果,測試的內容有古字、合字、地區性字、次文化發明字、未來可能的新字,此外也可以產生錯字、古樂譜用字(古代「減字譜」上的音符,其實是一種特殊漢字),而如果複製這個頁面到無ids render能力的網站或者電腦上,那些缺字會還原成一個IDS表意文字序列,仍然具有可傳遞性可讀性測試給Mediawiki使用的動態組字引擎與mediawiki延伸模組(增加 IDS這個標籤)的效果圖

如何測試[编辑]

要描述一個漢字缺字,我們要編寫一個IDS(unicode的表意文字序列),一個IDS由IDC組字符與文字部件以先序(prefix)構成。

IDC組字符解說:

⿰左右組合
⿱上下組合
⿲左中右組合
⿳上中下組合
⿴囗 之類的全包圍組合
⿵冂、門、鬥、「『夃』的乃」等的左上右型包圍
⿶凵 左下右型包圍組合 
⿷匚、⼖ 上左下等包圍
⿸厂、广、尸、疒、尸、戶、户、虍 等左上包右下的包圍
⿹气 一類右上包左下的字	
⿺辶、廴和翅的支等左下包右上組合
⿻ 重疊,目前尚未實作

IDS的範例 招財進寶:

⿰貝招
⿰隹⿰貝招
⿴辶⿴宀⿱珤⿰隹⿰貝招

其他例子

⿱⿰OK土   (這是真有其字,是台灣戶政用字裡一個罕見的名字)
⿺辶⿳穴⿰月⿰⿲⿱ㄠ長⿱言馬⿱ㄠ長刂心 biangbiang麵 
(不同寫法的biang麵都可以描述出來)

然後把IDS複製起來,另開瀏覽器的分頁,輸入以下

https://tools.wmflabs.org/idsgen/⿺辶⿴宀⿱珤⿰隹⿰貝招.png?字體=宋體

就可以看到組好的招財進寶了。

請按右鍵開這個連結去測試看看

這個IDS字形產生引擎的參數有:

  1. 圖檔格式
    1. png :將來的IDS標籤預設使用,一般顯示以足夠
    2. svg
  2. 字體
    1. 楷體
    2. 楷體粗體
    3. 宋體
    4. 宋體粗體

未來的展望[编辑]

使用ids標籤如這樣的範例

<ids>⿺辶⿴宀⿱珤⿰隹⿰貝招</ids>

,實際上會在維基的網站上render成這樣的html碼:

<img  align=middle alt="⿺辶⿴宀⿱珤⿰隹⿰貝招⿺辶⿴宀⿱珤⿰隹⿰貝招" src="https://tools.wmflabs.org/idsgen/⿺辶⿴宀⿱珤⿰隹⿰貝招.png?字體=宋體" style="height: 1em; width: 1em; vertical-align: middle; margin: 0.4em 0px 0.7em; "  />';

就可以在維基文庫裡面顯示所要的缺字了,這個extension我已經寫好了,我在mediawiki插件區有放了,可以裝在一個測試的mediawiki網站來測試看看,就會出現前面貼的mediawiki測試圖那樣的效果。

FAQ[编辑]

Q1:萬一有人把unicode已經編碼的字用IDS,會不會產生混亂?

A1:有反查的演算法,以及漢字的筆序自然定序,只要使用一樣的部件同樣組合出來,可以用程式自動判斷出其實是同一個字,另外程式將來可以提供自動代換,有unicode的,就用unicode

Q2:同一個字,有可能有複數的組合方法,會不會產生資訊上的混亂?

A2:承A1以漢字的筆序自然定序,只要使用一樣的部件同樣組合出來,就會有同樣的hashcode,就可以知道是同一個字

注音上標測試[编辑]

測試

{{Ruby|拜|ㆠㄞ}}

效果: ㆠㄞ

{{ruby|九|ㄍㄠˋ}}

效果:

ㄍㄠˋ


這好像是舊的template

{{zhuyin_St_layout|八|ㄅㄚ}}

資源[编辑]

template:zhuyin_St_layout


zhuyin_St_layout.css

{{#css:zhuyin_St_layout.css}}