最近跟大陸客戶有軟體上的來往, 對方要求轉簡體語系, 但每次update都要轉換有點麻煩.
還要編譯..測試...大幅增加一個run的時間 :(
且考慮到以後在台灣販賣也有繁體 . 美語 等語係問題..
於是想說做個語言整合.
關於 unicode 去顯示中文字的做法,本人的程式都是用 BCB 6去寫的,也許在 vc上的做法有些不同.
1.首先在程式一運行時我會去註冊一個”字型檔”(也許是繁中 or 簡中的字庫).....AddFontResource("C:\\xxxx\\xxxx.TTF");
(這個字庫可以伴隨著.exe 的檔案,也可以利用 res 的方式把它跟 .exe 包在一起(網路上有它的做法))
2.因為 BCB 6 本身並無法直接顯示unicode 的文字,所以有兩種做法
(1).上網找可以顯示uniocde 的VCL (如 Tntxxx 的 VCL).
(2).最通用的方式是直接找出要把字串顯示在上面的 DC .之後利用TextOutW 的方式去顯示出unicode 的字型.
大至上的順序是這樣的GetDC(取得DC);CreateFont(創建你要顯示的字型大小及樣式);SelectObject(設定字型);
SetBkColor(設定字体的背景顏色);SetTextColor(設定字体的顏色);TextOutW(在特定的位置上顯示unicode 的字串);
ReleaseDC(釋放DC).
這樣就算我的程式是在非繁体中文的 OS 中,它也可以正常的顯示出繁体中文,而不會變成亂碼。