diff --git "a/a702_\346\237\245\346\211\276\345\217\212\345\241\253\345\205\245\346\274\242\345\255\227\346\250\231\351\237\263.py" "b/a702_\346\237\245\346\211\276\345\217\212\345\241\253\345\205\245\346\274\242\345\255\227\346\250\231\351\237\263.py" index 3d31d3b..c0ab80b 100644 --- "a/a702_\346\237\245\346\211\276\345\217\212\345\241\253\345\205\245\346\274\242\345\255\227\346\250\231\351\237\263.py" +++ "b/a702_\346\237\245\346\211\276\345\217\212\345\241\253\345\205\245\346\274\242\345\255\227\346\250\231\351\237\263.py" @@ -3,17 +3,12 @@ import xlwings as xw -from mod_file_access import ( - copy_excel_sheet, - get_han_ji_khoo, - get_sound_type, - reset_han_ji_piau_im_cells, -) +from mod_file_access import get_han_ji_khoo, get_sound_type from p702_Ca_Han_Ji_Thak_Im import ca_han_ji_thak_im -# from p703_Kong_Un_Ca_Thak_Im import ca_han_ji_thak_im - +# ============================================================================== # (0) 取得專案根目錄。 +# ============================================================================== # 使用已打開且處於作用中的 Excel 工作簿 try: wb = xw.apps.active.books.active @@ -26,82 +21,96 @@ file_path = wb.fullname print(f"完整檔案路徑: {file_path}") + # 獲取活頁簿的檔案名稱(不包括路徑) file_name = wb.name print(f"檔案名稱: {file_name}") + # 顯示「已輸入之拼音字母及注音符號」 -named_range = wb.names['顯示注音輸入'] # 選擇名為 "顯示注音輸入" 的命名範圍# 選擇名為 "顯示注音輸入" 的命名範圍 +named_range = wb.names[ + "顯示注音輸入" +] # 選擇名為 "顯示注音輸入" 的命名範圍# 選擇名為 "顯示注音輸入" 的命名範圍 named_range.refers_to_range.value = True +# ============================================================================== # (1) A720: 將 V3 儲存格內的漢字,逐個填入標音用方格。 -sheet = wb.sheets['漢字注音'] # 選擇工作表 -sheet.activate() # 將「漢字注音」工作表設為作用中工作表 -sheet.range('A1').select() # 將 A1 儲存格設為作用儲存格 +# ============================================================================== +sheet = wb.sheets["漢字注音"] # 選擇工作表 +sheet.activate() # 將「漢字注音」工作表設為作用中工作表 +sheet.range("A1").select() # 將 A1 儲存格設為作用儲存格 +# ============================================================================== # (2) A731: 自動為漢字查找讀音,並抄寫到漢字的上方(拼音)及下方(注音)。 -type = get_sound_type(wb) +# ============================================================================== +type = get_sound_type(wb) # 取得【語音類型】,判別使用【白話音】或【文讀音】何者。 han_ji_khoo = get_han_ji_khoo(wb) if han_ji_khoo == "河洛話" and type == "白話音": ca_han_ji_thak_im( wb=wb, - sheet_name='漢字注音', - cell='V3', + sheet_name="漢字注音", + cell="V3", hue_im="白話音", han_ji_khoo="河洛話", - db_name='Ho_Lok_Ue.db', - module_name='mod_河洛話', - function_name='han_ji_ca_piau_im', + db_name="Ho_Lok_Ue.db", + module_name="mod_河洛話", + function_name="han_ji_ca_piau_im", ) elif han_ji_khoo == "河洛話" and type == "文讀音": ca_han_ji_thak_im( wb=wb, - sheet_name='漢字注音', - cell='V3', + sheet_name="漢字注音", + cell="V3", hue_im="文讀音", han_ji_khoo="河洛話", - db_name='Ho_Lok_Ue.db', - module_name='mod_河洛話', - function_name='han_ji_ca_piau_im', + db_name="Ho_Lok_Ue.db", + module_name="mod_河洛話", + function_name="han_ji_ca_piau_im", ) elif han_ji_khoo == "廣韻": ca_han_ji_thak_im( wb=wb, - sheet_name='漢字注音', - cell='V3', + sheet_name="漢字注音", + cell="V3", hue_im="文讀音", han_ji_khoo="廣韻", - db_name='Kong_Un.db', - module_name='mod_廣韻', - function_name='han_ji_ca_piau_im', + db_name="Kong_Un.db", + module_name="mod_廣韻", + function_name="han_ji_ca_piau_im", ) else: - print("無法執行漢字標音作業,請確認【env】工作表【語音類型】及【漢字庫】欄位的設定是否正確!") + print( + "無法執行漢字標音作業,請確認【env】工作表【語音類型】及【漢字庫】欄位的設定是否正確!" + ) sys.exit(2) +# ============================================================================== # (3) A740: 將【漢字注音】工作表的內容,轉成 HTML 網頁檔案。 +# ============================================================================== # tng_sing_bang_iah(wb, '漢字注音', 'V3') +# ============================================================================== # (4) A750: 將 Tai_Gi_Zu_Im_Bun.xlsx 檔案,依 env 工作表的設定,另存新檔到指定目錄。 +# ============================================================================== try: - file_name = str(wb.names['TITLE'].refers_to_range.value).strip() + file_name = str(wb.names["TITLE"].refers_to_range.value).strip() except KeyError: # print("未找到命名範圍 'TITLE',使用預設名稱") # file_name = "default_file_name.xlsx" # 提供一個預設檔案名稱 setting_sheet = wb.sheets["env"] - file_name = str( - setting_sheet.range("C4").value - ).strip() + file_name = str(setting_sheet.range("C4").value).strip() # 設定檔案輸出路徑,存於專案根目錄下的 output2 資料夾 -output_path = wb.names['OUTPUT_PATH'].refers_to_range.value +output_path = wb.names["OUTPUT_PATH"].refers_to_range.value new_file_path = os.path.join( - ".\\{0}".format(output_path), - f"【河洛話注音】{file_name}.xlsx") + ".\\{0}".format(output_path), f"【河洛話注音】{file_name}.xlsx" +) # 儲存新建立的工作簿 wb.save(new_file_path) +print(f"新檔案已儲存至: {new_file_path}") # 保存 Excel 檔案 # wb.close() - +print("程式執行完畢!") +sys.exit(0) diff --git "a/a702_\346\237\245\346\211\276\345\217\212\345\241\253\345\205\245\346\274\242\345\255\227\346\250\231\351\237\263_bak.py" "b/a702_\346\237\245\346\211\276\345\217\212\345\241\253\345\205\245\346\274\242\345\255\227\346\250\231\351\237\263_bak.py" new file mode 100644 index 0000000..3d31d3b --- /dev/null +++ "b/a702_\346\237\245\346\211\276\345\217\212\345\241\253\345\205\245\346\274\242\345\255\227\346\250\231\351\237\263_bak.py" @@ -0,0 +1,107 @@ +import os +import sys + +import xlwings as xw + +from mod_file_access import ( + copy_excel_sheet, + get_han_ji_khoo, + get_sound_type, + reset_han_ji_piau_im_cells, +) +from p702_Ca_Han_Ji_Thak_Im import ca_han_ji_thak_im + +# from p703_Kong_Un_Ca_Thak_Im import ca_han_ji_thak_im + +# (0) 取得專案根目錄。 +# 使用已打開且處於作用中的 Excel 工作簿 +try: + wb = xw.apps.active.books.active +except Exception as e: + print(f"發生錯誤: {e}") + print("無法找到作用中的 Excel 工作簿") + sys.exit(2) + +# 獲取活頁簿的完整檔案路徑 +file_path = wb.fullname +print(f"完整檔案路徑: {file_path}") + +# 獲取活頁簿的檔案名稱(不包括路徑) +file_name = wb.name +print(f"檔案名稱: {file_name}") + +# 顯示「已輸入之拼音字母及注音符號」 +named_range = wb.names['顯示注音輸入'] # 選擇名為 "顯示注音輸入" 的命名範圍# 選擇名為 "顯示注音輸入" 的命名範圍 +named_range.refers_to_range.value = True + +# (1) A720: 將 V3 儲存格內的漢字,逐個填入標音用方格。 +sheet = wb.sheets['漢字注音'] # 選擇工作表 +sheet.activate() # 將「漢字注音」工作表設為作用中工作表 +sheet.range('A1').select() # 將 A1 儲存格設為作用儲存格 + +# (2) A731: 自動為漢字查找讀音,並抄寫到漢字的上方(拼音)及下方(注音)。 +type = get_sound_type(wb) +han_ji_khoo = get_han_ji_khoo(wb) +if han_ji_khoo == "河洛話" and type == "白話音": + ca_han_ji_thak_im( + wb=wb, + sheet_name='漢字注音', + cell='V3', + hue_im="白話音", + han_ji_khoo="河洛話", + db_name='Ho_Lok_Ue.db', + module_name='mod_河洛話', + function_name='han_ji_ca_piau_im', + ) +elif han_ji_khoo == "河洛話" and type == "文讀音": + ca_han_ji_thak_im( + wb=wb, + sheet_name='漢字注音', + cell='V3', + hue_im="文讀音", + han_ji_khoo="河洛話", + db_name='Ho_Lok_Ue.db', + module_name='mod_河洛話', + function_name='han_ji_ca_piau_im', + ) +elif han_ji_khoo == "廣韻": + ca_han_ji_thak_im( + wb=wb, + sheet_name='漢字注音', + cell='V3', + hue_im="文讀音", + han_ji_khoo="廣韻", + db_name='Kong_Un.db', + module_name='mod_廣韻', + function_name='han_ji_ca_piau_im', + ) +else: + print("無法執行漢字標音作業,請確認【env】工作表【語音類型】及【漢字庫】欄位的設定是否正確!") + sys.exit(2) + +# (3) A740: 將【漢字注音】工作表的內容,轉成 HTML 網頁檔案。 +# tng_sing_bang_iah(wb, '漢字注音', 'V3') + +# (4) A750: 將 Tai_Gi_Zu_Im_Bun.xlsx 檔案,依 env 工作表的設定,另存新檔到指定目錄。 +try: + file_name = str(wb.names['TITLE'].refers_to_range.value).strip() +except KeyError: + # print("未找到命名範圍 'TITLE',使用預設名稱") + # file_name = "default_file_name.xlsx" # 提供一個預設檔案名稱 + setting_sheet = wb.sheets["env"] + file_name = str( + setting_sheet.range("C4").value + ).strip() + +# 設定檔案輸出路徑,存於專案根目錄下的 output2 資料夾 +output_path = wb.names['OUTPUT_PATH'].refers_to_range.value +new_file_path = os.path.join( + ".\\{0}".format(output_path), + f"【河洛話注音】{file_name}.xlsx") + +# 儲存新建立的工作簿 +wb.save(new_file_path) + +# 保存 Excel 檔案 +# wb.close() + diff --git "a/docs/\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213_\345\215\201\344\272\224\351\237\263.html" "b/docs/\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213_\345\215\201\344\272\224\351\237\263.html" new file mode 100644 index 0000000..8bb300f --- /dev/null +++ "b/docs/\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213_\345\215\201\344\272\224\351\237\263.html" @@ -0,0 +1,47 @@ + + + + + 《永遇樂.京口北固亭懷古》 + + + + + 《永遇樂.京口北固亭懷古》 +
+ + 《永遇樂.京口北固亭懷古》 + +
+ +

+ (堅一出) (沽二求) (江一求) (干一時) + (經一英) (恭五喜) (艍五門) (皆七門) + (君一時) (恭七地) (沽五門) (艍二出) + (艍二門) (迦七時) (瓜一求) (皆五地) + (公一喜) (丩五柳) (公二曾) (伽七頗) + (艍二英) (監二地) (公一喜) (檜一出) (艍二去) + (瓜八出) (姜五英) (交二出) (艍七時) + (金五時) (姜五時) (江七喜) (經八門) + (巾五入) (高七地) (居三求) (沽五柳) (經五曾) (艍七曾) + (恭二時) (公一地) (堅五柳) + (金一求) (高一求) (堅四他) (膠二毛) + (居三去) (君一他) (干七門) (居二柳) (艍五入) (沽二喜) +

+ (觀五語) (膠一求) (交二出) (交二出) + (公一喜) (公五柳) (居一求) (艍一時) + (驚五英) (經四地) (公一出) (公五喜) (公四邊) (沽三求) + (艍三時) (金八時) (甘一時) (堅五柳) + (江七門) (恭一地) (丩五英) (居三求) + (公一喜) (扛二喜) (恭五英) (丩一曾) (沽七柳) + (高二去) (甘一去) (檜五喜) (丩二時) + (君八喜) (居五柳) (艍五時) (膠七喜) + (巾四英) (堅三頗) (巾五時) (膠一英) (迦七時) (沽二求) + (巾五邊) (姜五時) (君七門) + (兼五柳) (高二頗) (高二柳) (居二英) + (恭七時) (經五柳) (觀七喜) (沽二喜) +

+ + + \ No newline at end of file diff --git "a/docs/\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221_\346\226\271\351\237\263\347\254\246\350\231\237.html" "b/docs/\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221_\346\226\271\351\237\263\347\254\246\350\231\237.html" deleted file mode 100644 index aa7eed4..0000000 --- "a/docs/\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221_\346\226\271\351\237\263\347\254\246\350\231\237.html" +++ /dev/null @@ -1,47 +0,0 @@ - - - - - 《永遇樂.京口北固亭懷古》【河洛白話音】 - - - - - 《永遇樂.京口北固亭懷古》【河洛白話音】 -
- - 《永遇樂.京口北固亭懷古》【河洛白話音】 - -
- -

- (ㄑㄧㄢ) (ㄍㆦˋ) (ㄍㄤ) (ㄙㄢ) - (ㄧㄥ) (ㄏㄧㆲˊ) (ㆠㄨˊ) (ㆠㄞ˫) - (ㄙㄨㄣ) (ㄉㄧㆲ˫) (ㆠㆦˊ) (ㄘㄨˋ) - (ㆠㄨˋ) (ㄒㄧㄚ˫) (ㄍㄨㄚ) (ㄉㄞˊ) - (ㄏㆲ) (ㄌㄧㄨˊ) (ㄗㆲˋ) (ㄆㆤ˫) - (ㄨˋ) (ㄉㆩˋ) (ㄏㆲ) (ㄘㄨㆤ) (ㄎㄨˋ) - (ㄘㄨㄚㆷ˙) (ㄧㄤˊ) (ㄘㄠˋ) (ㄙㄨ˫) - (ㄒㄧㆬˊ) (ㄒㄧㄤˊ) (ㄏㄤ˫) (ㆠㄧㆻ˙) - (ㆢㄧㄣˊ) (ㄉㄜ˫) (ㄍㄧ˪) (ㄌㆦˊ) (ㄐㄧㄥˊ) (ㄗㄨ˫) - (ㄒㄧㆲˋ) (ㄉㆲ) (ㄌㄧㄢˊ) - (ㄍㄧㆬ) (ㄍㄜ) (ㄊㄧㄚㆵ) (ㄇㄚˋ) - (ㄎㄧ˪) (ㄊㄨㄣ) (ㆠㄢ˫) (ㄌㄧˋ) (ㆡㄨˊ) (ㄏㆦˋ) -

- (ㆣㄨㄢˊ) (ㄍㄚ) (ㄘㄠˋ) (ㄘㄠˋ) - (ㄏㆲ) (ㄌㆲˊ) (ㄍㄧ) (ㄙㄨ) - (ㄧㆩˊ) (ㄉㄧㆻ) (ㄘㆲ) (ㄏㆲˊ) (ㄅㆦㆻ) (ㄍㆦ˪) - (ㄙㄨ˪) (ㄒㄧㆴ˙) (ㄙㆰ) (ㄌㄧㄢˊ) - (ㆠㄤ˫) (ㄉㄧㆲ) (ㄧㄨˊ) (ㄍㄧ˪) - (ㄏㆲ) (ㄏㆧˋ) (ㄧㆲˊ) (ㄐㄧㄨ) (ㄌㆦ˫) - (ㄎㄜˋ) (ㄎㆰ) (ㄏㄨㆤˊ) (ㄒㄧㄨˋ) - (ㄏㄨㆵ˙) (ㄌㄧˊ) (ㄙㄨˊ) (ㄏㄚ˫) - (ㄧㆵ) (ㄆㄧㄢ˪) (ㄒㄧㄣˊ) () (ㄒㄧㄚ˫) (ㄍㆦˋ) - (ㄅㄧㄣˊ) (ㄒㄧㄤˊ) (ㆠㄨㄣ˫) - (ㄌㄧㆰˊ) (ㄆㄜˋ) (ㄌㄜˋ) (ㄧˋ) - (ㄒㄧㆲ˫) (ㄌㄧㄥˊ) (ㄏㄨㄢ˫) (ㄏㆦˋ) -

- - - \ No newline at end of file diff --git "a/output6/\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221\343\200\212\346\210\221\346\234\211\344\270\200\345\200\213\345\244\242\346\203\263\343\200\213.xlsx" "b/output6/\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221\343\200\212\346\210\221\346\234\211\344\270\200\345\200\213\345\244\242\346\203\263\343\200\213.xlsx" new file mode 100644 index 0000000..a9f740c Binary files /dev/null and "b/output6/\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221\343\200\212\346\210\221\346\234\211\344\270\200\345\200\213\345\244\242\346\203\263\343\200\213.xlsx" differ diff --git "a/output6/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\345\260\232\346\234\211\345\212\233\351\207\217\347\232\204\346\257\217\346\227\245\347\245\210\347\246\261\346\226\207\343\200\213\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221.xlsx" "b/output6/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\345\260\232\346\234\211\345\212\233\351\207\217\347\232\204\346\257\217\346\227\245\347\245\210\347\246\261\346\226\207\343\200\213\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221.xlsx" index 6e8a740..9574f75 100644 Binary files "a/output6/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\345\260\232\346\234\211\345\212\233\351\207\217\347\232\204\346\257\217\346\227\245\347\245\210\347\246\261\346\226\207\343\200\213\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221.xlsx" and "b/output6/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\345\260\232\346\234\211\345\212\233\351\207\217\347\232\204\346\257\217\346\227\245\347\245\210\347\246\261\346\226\207\343\200\213\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221.xlsx" differ diff --git "a/output6/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221\343\200\212\346\210\221\346\234\211\344\270\200\345\200\213\345\244\242\346\203\263\343\200\213.xlsx" "b/output6/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221\343\200\212\346\210\221\346\234\211\344\270\200\345\200\213\345\244\242\346\203\263\343\200\213.xlsx" new file mode 100644 index 0000000..55951a4 Binary files /dev/null and "b/output6/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\220\346\262\263\346\264\233\347\231\275\350\251\261\351\237\263\343\200\221\343\200\212\346\210\221\346\234\211\344\270\200\345\200\213\345\244\242\346\203\263\343\200\213.xlsx" differ diff --git "a/output7/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213.xlsx" "b/output7/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213.xlsx" index 99c4f4d..38ef22e 100644 Binary files "a/output7/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213.xlsx" and "b/output7/\343\200\220\346\262\263\346\264\233\350\251\261\346\263\250\351\237\263\343\200\221\343\200\212\346\260\270\351\201\207\346\250\202\357\274\216\344\272\254\345\217\243\345\214\227\345\233\272\344\272\255\346\207\267\345\217\244\343\200\213.xlsx" differ diff --git a/p702_Ca_Han_Ji_Thak_Im.py b/p702_Ca_Han_Ji_Thak_Im.py index 966b00d..cf640f6 100644 --- a/p702_Ca_Han_Ji_Thak_Im.py +++ b/p702_Ca_Han_Ji_Thak_Im.py @@ -11,12 +11,44 @@ from mod_標音 import tlpa_tng_han_ji_piau_im # 台語音標轉漢字標音 from mod_標音 import PiauIm +# ========================================================== +# 注音法設定和共用變數 +# ========================================================== +zu_im_huat_list = { + "SNI": ["fifteen_yin", "rt", "十五音切語"], + "TPS": ["Piau_Im", "rt", "方音符號注音"], + "POJ": ["pin_yin", "rt", "白話字拼音"], + "TL": ["pin_yin", "rt", "台羅拼音"], + "BP": ["pin_yin", "rt", "閩拼標音"], + "TLPA_Plus": ["pin_yin", "rt", "台羅改良式"], + "DBL": ["Siang_Pai", "rtc", "雙排注音"], +} + + +def choose_piau_im_method(piau_im, zu_im_huat, siann_bu, un_bu, tiau_ho): + """選擇並執行對應的注音方法""" + if zu_im_huat == "十五音": + return piau_im.SNI_piau_im(siann_bu, un_bu, tiau_ho) + elif zu_im_huat == "白話字": + return piau_im.POJ_piau_im(siann_bu, un_bu, tiau_ho) + elif zu_im_huat == "台羅拼音": + return piau_im.TL_piau_im(siann_bu, un_bu, tiau_ho) + elif zu_im_huat == "閩拼方案": + return piau_im.BP_piau_im(siann_bu, un_bu, tiau_ho) + elif zu_im_huat == "方音符號": + return piau_im.TPS_piau_im(siann_bu, un_bu, tiau_ho) + elif zu_im_huat == "台語音標": + siann = piau_im.Siann_Bu_Dict[siann_bu]["台語音標"] or "" + un = piau_im.Un_Bu_Dict[un_bu]["台語音標"] + return f"{siann}{un}{tiau_ho}" + return "" + def ca_han_ji_thak_im(wb, sheet_name='漢字注音', cell='V3', hue_im="白話音", han_ji_khoo="河洛話", db_name='Ho_Lok_Ue.db', module_name='mod_河洛話', function_name='han_ji_ca_piau_im'): # 初始化 PiauIm 類別,産生標音物件 piau_im = PiauIm(han_ji_khoo=han_ji_khoo) - # piau_im_huat = wb.names['標音方法'].refers_to_range.value - piau_im_huat = '方音符號' + piau_im_huat = wb.names['標音方法'].refers_to_range.value + # piau_im_huat = '方音符號' # 顯示「已輸入之拼音字母及注音符號」 named_range = wb.names['顯示注音輸入'] @@ -30,7 +62,7 @@ def ca_han_ji_thak_im(wb, sheet_name='漢字注音', cell='V3', hue_im="白話 # 取得 V3 儲存格的字串 v3_value = sheet.range(cell).value - # 每頁最多處理 20 列 + # 取得工作表能處理最多列數: 20 列 TOTAL_ROWS = int(wb.names['每頁總列數'].refers_to_range.value) # 每列最多處理 15 字元 CHARS_PER_ROW = int(wb.names['每列總字數'].refers_to_range.value) @@ -145,10 +177,24 @@ def ca_han_ji_thak_im(wb, sheet_name='漢字注音', cell='V3', hue_im="白話 tai_gi_im_piau = ''.join([siann_bu, un_bu, tiau_ho]) # 依使用者指定之【標音方法】,將【台語音標】轉換成其所需之【漢字標音】 - han_ji_piau_im = tlpa_tng_han_ji_piau_im( - piau_im=piau_im, - piau_im_huat=piau_im_huat, - tai_gi_im_piau=tai_gi_im_piau + # han_ji_piau_im = tlpa_tng_han_ji_piau_im( + # piau_im=piau_im, + # piau_im_huat=piau_im_huat, + # tai_gi_im_piau=tai_gi_im_piau + # ) + + zu_im_list = split_tai_gi_im_piau(tai_gi_im_piau) + if zu_im_list[0] == "" or zu_im_list[0] == None: + siann_bu = "Ø" + else: + siann_bu = zu_im_list[0] + + han_ji_piau_im = choose_piau_im_method( + piau_im, + piau_im_huat, + siann_bu, + zu_im_list[1], + zu_im_list[2] ) else: #----------------------------------------------------------------- diff --git a/requirements.txt b/requirements.txt index 429aa06..0072133 100644 Binary files a/requirements.txt and b/requirements.txt differ diff --git "a/\346\274\242\350\252\236\346\255\243\345\255\227" "b/\346\274\242\350\252\236\346\255\243\345\255\227" new file mode 100644 index 0000000..98762ea Binary files /dev/null and "b/\346\274\242\350\252\236\346\255\243\345\255\227" differ