近日友人委託幫忙一件事,就是要把一份有 Sangayana 字型的巴利文換成標準 Unicode 的巴利文,也就是換成標準的拉丁拼音文字。
因為我沒有 Sangayana 字型,所以第一個想法是去網路搜尋,不過意外地很難找,找不到有人提供 Sangayana 字型。
既然沒字型,就先開啟檔案試試,一打開,發現文字似乎很正常,一查詢巴利文的字型,就是 Sangayana 沒錯,但我並沒有 Sangayana 字型,這是怎麼一回事?
把這些字全部換成 Times New Roman,也發現字型有改變,見下圖紅色部份,這表示之前看到的,真的是 Sangayana 字型,那這 Sangayana 字型是哪來的?
再次查詢,才知道原來 Word 也可以內嵌字型,在 Word 的「選項」->「儲存」中,可以看到有內嵌字型的功能,我想這個檔案應該有內嵌 Sangayana 字型。
理論上,既然可以看到字型,就可以做出對照表,以上圖的例子,就是把 Sangayana 字型的「à」換成 Times New Roman 的「ā」即可。
在測試時,遇到一個問題,因為我沒有真正安裝 Sangayana 字型,所以無法用搜尋指定字型的方式來尋找其它 Sangayana 文字,而且也無法把一般文字切換成 Sangayana 字型,這樣就不易做出取代表,所以下一個想法就是有沒有方法取出 Word 檔案中的 Sangayana 字型檔?
網路上找了一下,沒找到,試著問 chatGPT,它給的方法如下。
我稍為試了試,全部失敗。
- 我找不到 Word 的那些選項。
- 我試 FontForge 也無法取出 Word 的內嵌字型。
- 我另存成 PDF 之後,用 PDF-XChange 也找不到如何取出內嵌字型。
失敗的原因可能是用的程式或版本與 chatGPT 所瞭解的不同吧。
不過倒是這些提醒,我試出另一種方法,也就是在 FontForge 中,雖然沒找到如何取出 Word 內嵌字型,卻看到它可以取出 PDF 內嵌字型。
FontForge 在開啟時,過濾器選「從PDF擷取」,開啟由 Word 另存的 PDF 檔。
發現字型太多了,也沒有 Sangayana ...
回到 PDF 檢查,幸好可以查到在 PDF 中 Sangayana 字型是 __WRD_EMBED_SUB_43
回到 FontForge ,選擇 __WRD_EMBED_SUB_43 字型,就可以看到字型內容了。
底下是採用工具列中的「編碼」->「壓縮」的方式呈現,可以看出收錄的文字不多,需要進行轉換的字只有最後那 16 個,當初大概是採用了「只嵌入文件中有使用的字元」。
在儲存字型檔之前,在工具列的「元件」->「字型資訊」視窗中,把底下的「__WRD_EMBED_SUB_43」改成「Sangayana」。
一開始我沒有這樣改,結果存成字型檔之後,在 Word 中也找不到「Sangayana」或「__WRD_EMBED_SUB_43」字型,所以才回頭找到這個要修改的地方。
接著由工具列的「檔案」選擇「産生字型」。
按下 Generate 就可以産生有部份字元的 Sangayana 字型檔了。
後續的工作,就是做出取代表,用程式處理即可。
在未來,或許 AI 和 Word 結合後,一句話就可以叫 Word 完成這些取代動作了。
「嘿!AI 兄,麻煩你把 Sangayana 字型的文字都換成 Times New Roman 的字型,文字也要換成正確的用字喔。」
「沒問題...(咕嚕咕嚕)... 已完成!」
在上述對話還無法實現之前,一切都還是要自己來了。
- 瀏覽次數:674
發表新回應