使用2.9版後,wxRichTextCtrl 的中文內容都變成亂
使用2.9版後,wxRichTextCtrl 的中文內容都變成亂
好像wx內部使用 UTF-8 當成內定的編碼。
那要怎樣設定才可以看到以前 Ascii 的簡繁體中文檔?
那要怎樣設定才可以看到以前 Ascii 的簡繁體中文檔?
「漢書文書處理系統」作者,在這向大家學習。
MyBlog 梅僧山房
MyBlog 梅僧山房
Re: 使用2.9版後,wxRichTextCtrl 的中文內容都變
将你的中文 to unicode 再显示在wxRichTextCtrl中试试HeMason wrote:好像wx內部使用 UTF-8 當成內定的編碼。
那要怎樣設定才可以看到以前 Ascii 的簡繁體中文檔?
work work!!!
Re: 使用2.9版後,wxRichTextCtrl 的中文內容都變
願聞其詳!sishui wrote: 将你的中文 to unicode 再显示在wxRichTextCtrl中试试
「漢書文書處理系統」作者,在這向大家學習。
MyBlog 梅僧山房
MyBlog 梅僧山房
Re: 使用2.9版後,wxRichTextCtrl 的中文內容都變
我的程式中是用下面的方法將 Big5 的中文轉成 Unicode 的:HeMason wrote:願聞其詳!sishui wrote: 将你的中文 to unicode 再显示在wxRichTextCtrl中试试
Code: Select all
wxCSConv convBig5(wxFONTENCODING_BIG5);
char* big5_string = get_string_from_somewhere();
wxString unicode_string = wxString( big5_string, convBig5);
Re: 使用2.9版後,wxRichTextCtrl 的中文內容都變
謝謝您!closer wrote:我的程式中是用下面的方法將 Big5 的中文轉成 Unicode 的
我會試試看。
原先我以為 wxWidgets 或 wxRichTextCtrl 有什麼設定可以直接改變預設的檔案/字串編碼。恐怕這算盤要落空了。
「漢書文書處理系統」作者,在這向大家學習。
MyBlog 梅僧山房
MyBlog 梅僧山房
Re: 使用2.9版後,wxRichTextCtrl 的中文內容都變
您是使用 wxRichTextCtrl::LoadFile() 嗎?HeMason wrote: 原先我以為 wxWidgets 或 wxRichTextCtrl 有什麼設定可以直接改變預設的檔案/字串編碼。恐怕這算盤要落空了。
我手上的程式只用了 wxTextCtrl。
我剛剛 trace 了一下 wxTextCtrl::LoadFile(),發現它使用 wxConvAuto() 轉換檔案的字碼。
因此,若是依下的方法做的話,是可以改變預設的檔案編碼的!
Code: Select all
wxFontEncoding old_encoding = wxConvAuto::GetFallbackEncoding();
wxConvAuto::SetFallbackEncoding( wxFONTENCODING_BIG5);
m_pTextArea->LoadFile( strFilename);
wxConvAuto::SetFallbackEncoding( old_encoding);
wxRichTextCtrl 比較複雜,我就沒試了。不過我猜應該大同小異。
希望對您有幫助!
(也感謝您讓我有動機去 trace code,我也多上了一課
Re: 使用2.9版後,wxRichTextCtrl 的中文內容都變
原來有這個Function!closer wrote: 甚至我們以 wxFONTENCODING_SYSTEM 取代 wxFONTENCODING_BIG5 的話,可以讓這個程式依系統目前的語系要以何種編碼讀取檔案。
wxRichTextCtrl 比較複雜,我就沒試了。不過我猜應該大同小異。
希望對您有幫助!
(也感謝您讓我有動機去 trace code,我也多上了一課
我也在台灣,可以互相認識一下。
我拜訪了您的blog,很棒喔!
我這一篇麻煩您看一下:
http://forums.wxwidgets.org/viewtopic.php?t=25394
想聽聽您的建議,或是您是否有意願。
上頭有我的聯絡資料。頗急!
「漢書文書處理系統」作者,在這向大家學習。
MyBlog 梅僧山房
MyBlog 梅僧山房
這問題還是沒解!
因為我可能讀進不同編碼的檔案,是否要自己偵測,然後降內容轉碼成UTF-8後,再交給 wxRichTextCtrl?
因為我可能讀進不同編碼的檔案,是否要自己偵測,然後降內容轉碼成UTF-8後,再交給 wxRichTextCtrl?
「漢書文書處理系統」作者,在這向大家學習。
MyBlog 梅僧山房
MyBlog 梅僧山房
剛剛看了一下 o-line help,關於:
wxConvAuto::SetFallbackEncoding( wxFONTENCODING_BIG5);
的確,他對 wxFile、wxTextCtrl等有影響,但是對 wxRichTextCtrl 就沒有影響。
試了幾個方法,都沒辦法在wxRichTextCtrl 中顯示 Big-5?
這次的Release 看起來改變還真不小啊!
其實「自動偵測」我有做過,還蠻準的。
但現在是就算我偵測到了,也不能正確顯示,到底要怎麼辦?
頭痛!
wxConvAuto::SetFallbackEncoding( wxFONTENCODING_BIG5);
的確,他對 wxFile、wxTextCtrl等有影響,但是對 wxRichTextCtrl 就沒有影響。
試了幾個方法,都沒辦法在wxRichTextCtrl 中顯示 Big-5?
這次的Release 看起來改變還真不小啊!
其實「自動偵測」我有做過,還蠻準的。
但現在是就算我偵測到了,也不能正確顯示,到底要怎麼辦?
頭痛!
「漢書文書處理系統」作者,在這向大家學習。
MyBlog 梅僧山房
MyBlog 梅僧山房