Skip to content

haydenwong7bm/inherited-glyphs-converter

Repository files navigation

繁體中文󠄁 简体中文󠄁 EN

傳承字形轉換器

轉換漢字至傳承字形(大致根據《傳承字形檢校󠄁表》標準),消󠄁除新字形香港󠄁及󠄁臺灣標準異體字,及󠄁於Unicode可統一但被分󠄁開編󠄁碼的󠄁漢字。

此轉換器會儘量保留新字體及󠄁簡化󠄁字

使󠄁用方法

命令列

python . <文󠄁字檔案名稱󠄁>

命令列選󠄁項:

選󠄁項 功能 預設値
-c 一個含有'j''k'及󠄁/或't'的󠄁字串,或者_
j:使󠄁用日本相容表意󠄁文󠄁字
k:使󠄁用韓󠄁國相容表意󠄁文󠄁字。
t:使󠄁用CNS 11643相容表意󠄁文󠄁字
_:不使󠄁用相容表意󠄁文󠄁字。
jkt
-s 使󠄁用輔助平󠄁面字符設定,參數値如下:
c:於輔助平󠄁面中,只使󠄁用已包󠄁括於Adobe-Japan1、HKSCS或UnihanCore2020的󠄁字符。
*:於輔助平󠄁面中,使󠄁用所󠄁有字符。
_:只使󠄁用基本平󠄁面字符。
c
-n 不轉換Unicode不能統一的󠄁字。(例如:秘 → 祕、床 → 牀)
-v 使󠄁用不符合字理唯常見的󠄁異體傳承字形寫法。(例如:免 → 免)
-a 使󠄁用更󠄁符合字理的󠄁異體傳承字形寫法。(例如:皆 → 𣅜)
-i 使󠄁用異體字選󠄁擇器序列轉換。參數列表:
adAdobe-Japan1異體字選󠄁擇器序列
moMoji-Joho異體字選󠄁擇器序列
ms澳門增補字符集異體字選󠄁擇器序列
-t 使󠄁用含有飾󠄁筆捺的󠄁異體字選󠄁擇器序列轉換。
-p 把標點符號置中。
-u 指定字符編󠄁碼解碼。 utf-8

導󠄁入模組

inheritedglyphs模組提供了一個函數convert(),此函數會轉換字串至傳承字形。

函數參數:

參數 功能 預設値
compatibility 一個含有'j''k'、及󠄁/或't'的󠄁可疊代物件。
'j':使󠄁用日本相容表意󠄁文󠄁字
'k':使󠄁用韓󠄁國相容表意󠄁文󠄁字。
't':使󠄁用CNS 11643相容表意󠄁文󠄁字
['j', 'k', 't']
supp_planes 使󠄁用輔助平󠄁面字符設定,參數値如下:
c:只使󠄁用已包󠄁括於Adobe-Japan1、HKSCS或UnihanCore2020的󠄁字符。
*:使󠄁用所󠄁有字符。
False:只使󠄁用基本平󠄁面字符。
'c'
convert_not_unifiable 轉換Unicode不能統一的󠄁字。(例如:秘 → 祕、床 → 牀) True
alternate 使󠄁用不符合字理唯常見的󠄁異體傳承字形寫法。(例如:免 → 免) False
etymological 使󠄁用更󠄁符合字理的󠄁異體傳承字形寫法。(例如:皆 → 𣅜) False
ivs 使󠄁用異體字選󠄁擇器序列轉換。參數値爲含有以下字串的󠄁可迭󠄁代物件或False
'ad'Adobe-Japan1異體字選󠄁擇器序列
'mo'Moji-Joho異體字選󠄁擇器序列
'ms'澳門增補字符集異體字選󠄁擇器序列
False
tiao_na 使󠄁用含有飾󠄁筆捺的󠄁異體字選󠄁擇器序列轉換。 True
punctation_align_center 把標點符號置中。 False

使󠄁用例子

>>> from inheritedglyphs import *
>>> string = '寒來暑往,秋收冬藏。閏餘成歳,律吕調陽。雲騰致雨,露結為霜。金生麗水,玉出崑崗。'
>>> print(convert(string))
寒來暑往,秋收冬藏。閏餘成歲,律呂調陽。雲騰致雨,露結爲霜。金生麗水,玉出崑崗。
>>> print(convert(string, compatibility='j')) # 不使󠄁用韓󠄁國及󠄁CNS相容表意󠄁文󠄁字
寒來暑往,秋收冬藏。閏餘成歲,律呂調陽。雲騰致雨,露結爲霜。金生麗水,玉出崑崗。
>>> print(convert(string, compatibility=False, ivs=['ad'])) # 只使用Adobe-Japan1異體字選󠄁擇器
寒󠄁來暑󠄁往󠄁,秋收冬󠄀藏。閏餘成󠄁歲,律呂調󠄁陽。雲騰󠄁致雨,露結爲霜。金生麗󠄁水,玉出崑崗。