線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:11174
推到 Plurk!
推到 Facebook!

如何於英文系統上顯示中文呢??

答題得分者是:pedro
ken.hsiao
一般會員


發表:17
回覆:15
積分:6
註冊:2007-03-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-12-27 14:44:42 IP:59.126.xxx.xxx 訂閱
請教一下版上的各位前輩,小弟有一程式,利用ini檔作成中文、英文切換的程式,該如何設定程式才能在英文系統上顯示中文呢??

例如:lable上有些部份需顯示中文,卻出???
SQL中若有中文,讀出來的字體也變成???

不知程式需要如何設定呢?請各位前輩大哥幫幫忙,謝謝!
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-12-27 14:52:31 IP:75.41.xxx.xxx 未訂閱
方案有二:
1.使用TNT UNICODE CONTROL來設計你的程式成為UNICODE SUPPORT。
2.如果你使用的平台為WINDOWS XP,又懶得寫程式,那麼恭喜你XP支援同時顯示非UNICODE的第二國語言程式,請至控制台->地區與語言選項->進階內設定第二種非UNICODE語言即可。
===================引 用 ken.hsiao 文 章===================
請教一下版上的各位前輩,小弟有一程式,利用ini檔作成中文、英文切換的程式,該如何設定程式才能在英文系統上顯示中文呢??

例如:lable上有些部份需顯示中文,卻出???
SQL中若有中文,讀出來的字體也變成???

不知程式需要如何設定呢?請各位前輩大哥幫幫忙,謝謝!
pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-12-27 14:56:15 IP:60.248.xxx.xxx 未訂閱
以下在英文XP環境試過,確實可行
1.用IE連結到yahoo等中文網站,IE會自行加掛中文字體
2.在控制台/地區及語言選項/進階,非unicode程式的語言,挑Chinese(Taiwan),如果沒出現這個可挑,即是步驟1沒做
3.一般有Font的屬性,皆需設成CHINESEBIG5_CHARSET
ken.hsiao
一般會員


發表:17
回覆:15
積分:6
註冊:2007-03-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-12-27 16:01:33 IP:59.126.xxx.xxx 訂閱
多謝兩位的回覆,兩位的答案基本上是一樣的!
我本來是想在不變更英文系統環境的前提下,看是否能顯示中文,不過看來應該是不行!

2位的答案都是ok的!只好把分數給pedro756901,因為Stallion是版主,應該不會太計較才是,還是謝謝您的幫忙!


syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-12-28 16:57:50 IP:61.64.xxx.xxx 訂閱
你必須將用到的字型附加在程式內
然後自己處理顯示
就是自己畫拉

===================引 用 ken.hsiao 文 章===================
多謝兩位的回覆,兩位的答案基本上是一樣的!
我本來是想在不變更英文系統環境的前提下,看是否能顯示中文,不過看來應該是不行!

2位的答案都是ok的!只好把分數給pedro756901,因為Stallion是版主,應該不會太計較才是,還是謝謝您的幫忙!

歸木淡
中階會員


發表:1
回覆:49
積分:75
註冊:2005-09-07

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-01-03 14:26:21 IP:71.235.xxx.xxx 訂閱
情況實際上分三種,
(一)對方電腦不支持遠東語系,也沒有任何中文字型,這時唯一的方法是自帶字型,用 AddFontResourceex 或 AddFontResource 將之讀入,然後按(二)處理
(二)對方電腦不支持遠東語系,但是有中文字型,這時要做的是將
label.font.charset:=CHINESEBIG5_CHARSET;
label.font.name:='字型名';
關鍵是要找出合用的字型名稱,除非你很清楚對方電腦上的字型,否則應用 EnumFontFamiliesEx 去查找
(三)對方電腦支持遠東語系,那便簡單多了,只要將
label.font.charset:=CHINESEBIG5_CHARSET;
即可,label.font.name不對也可以,Windows會自動幫你找.對當然更好,因為速度差很遠(我測試過,至少十倍).

幾點說明:
1) 很多常用Vcl改了font.charset:即可,例如tlabel, tedit, tmemo..........,但是也有很多例外,例如tcombobox, tlistbox...........
2) 所謂支持遠東語系,不是說改電腦的Locale,只是加入一些字型和Codepages,對非中文的software完全沒有影響
3) 所謂中文字型,不是說帶有中文的字型,而是字型必須說明是Big5_charset.例如大陸的Simsun,有細明體的所有字,但是因為它聲明自己是GB_charset,所以在方法一二中不能用,方法三則無所謂 ,因為裝了codepage,Windows自動會轉.
系統時間:2024-11-21 19:21:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!