|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
xdpxzhz
註冊時間: 2006-02-11 文章: 24
第 1 樓
|
發表於: 星期二 十月 17, 2006 1:39 pm 文章主題: 简体<->英文<->繁体 在VFP软件设计中怎样高性能转换 |
|
|
有好的思路兄弟请告诉我一下 |
|
回頂端 |
|
|
garfield Site Admin
註冊時間: 2003-01-30 文章: 2158
第 2 樓
|
發表於: 星期三 十月 18, 2006 6:05 pm 文章主題: |
|
|
如果是我設要計這樣的程式的話,
會用一個字串對照檔,
但用於簡繁對照還算正常, 英文就頭大了.
最簡單的方式是用內碼轉換的軟體, 將所有程式轉成你要的編輯( 只限簡.繁 )
再重新編譯成執行檔. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
|
xdpxzhz
註冊時間: 2006-02-11 文章: 24
第 3 樓
|
發表於: 星期四 十月 19, 2006 10:57 am 文章主題: 你说的两种思路我也想过 |
|
|
但是工程量太大!而且用户在使用一段时间或进入到一个模块时,它就改变繁体版或其它版本那就不可能使用EXE打包的方法完成,到底繁体与其它语言是不是字体库的不同呢? |
|
回頂端 |
|
|
catjoke
註冊時間: 2003-06-16 文章: 175 來自: 香港
第 4 樓
|
發表於: 星期四 十月 19, 2006 11:05 am 文章主題: |
|
|
dbf 對照檔乃是可行的, 只是多一個是 英文, 預早準備, 那就可以了..
BIG5CAP, GBCAP, ENGCAP...
但可以更改記下 字體及字型大小.. _________________ 喵喎~ 貓當然是 "茅" 的嘛! ^0^; |
|
回頂端 |
|
|
garfield Site Admin
註冊時間: 2003-01-30 文章: 2158
第 5 樓
|
發表於: 星期四 十月 19, 2006 4:56 pm 文章主題: |
|
|
用dbf 的對照檔也不錯,
vfp的form 也是用dbf型態來記錄form的相關資訊,
也可以用文字檔的方式做,
先建立3種語言的目錄,
每個目錄儲存每一個form的文字資料,
只要在 form.init( ) 裡, 將所有物件的caption讀入即可,
但....這只是畫面顯示而已,
有個更大的問題須要解決,
對目前vfp來說, 這就難了!
....... _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
|
xdpxzhz
註冊時間: 2006-02-11 文章: 24
第 6 樓
|
發表於: 星期四 十月 19, 2006 5:02 pm 文章主題: 你是否指的大问题是vfp在内存方面太差! |
|
|
还是在写代码简繁英在程序代码里不好用 |
|
回頂端 |
|
|
nelsonchuang
註冊時間: 2003-09-04 文章: 563 來自: 臺灣
第 7 樓
|
發表於: 星期六 十月 21, 2006 1:24 pm 文章主題: 難也不難,不難也難 |
|
|
這個問題在前幾個月我也曾想過,但是我想得比較大一些
那算是個全球化的問題,假設現在VFP已克服了unicode的問題,
那事情簡單了一半,我不曉得你有沒有玩過cs
你可以看看他的設定檔,你就知道我在說什麼了
你可以把你的每一個表單中都設定一個自用程序
假設稱為SetTitle
那你把表單中,每一個標籤的名稱都納入這個程序中,
再依各個語言地區在磁碟機中設立一個目錄
假設台灣稱為Chin_tra,大陸稱為Chin_sim,英文語系稱為Eng_lish
在使用者進入你的程式中選定語言別後(記到公用變數)
再依公用變數進入設定目錄,假設為繁體台灣
於是你的表單跑去Chin_tra抓取一個跟你表單一模一樣名稱的ini檔
再讓你的程式把ini檔中對應標籤的資料讀完後再填入標籤的CAption中
就解決了
這種作法的優點在於可以快速的全球化(這個前題是在於你的程式及作業流程在世界各地都是一套標準)
因為設計者只要委託當地的人員翻譯ini的資料,再丟上去設定的目錄即可,設計人員不需重新編譯程式.負擔大為減輕
缺點在於因為我們用的是象形文字,複合音單音節的字體,所以表達的文字,很短就可以了,但是我們對於其他語系並不瞭解,所以即使是英文版本的ini翻譯出來後
字仍會被截斷.
所以必須請當地的人員進行縮寫,還有就是在程式的撰寫當中,ToopTipText也必須納入ini檔中,那麼使用者即使看不懂縮寫,也會去看ToopTipText
如果你要問我,我有沒有成功過,我只能說,我自己測試了英文版的部份,也只測試了一個表單,但就我個人而言也算是功成的,這個方向是最快的,也是最簡單的,但重要的是程式的撰寫時規劃跟設計一定要小心.
以上是我自己規劃的經驗,提供給你參考! _________________ 大家好,請多指教 |
|
回頂端 |
|
|
janlih
註冊時間: 2003-11-04 文章: 69
第 8 樓
|
發表於: 星期二 六月 26, 2007 11:25 am 文章主題: |
|
|
garfield 寫到: | 用dbf 的對照檔也不錯,
vfp的form 也是用dbf型態來記錄form的相關資訊,
也可以用文字檔的方式做,
先建立3種語言的目錄,
每個目錄儲存每一個form的文字資料,
只要在 form.init( ) 裡, 將所有物件的caption讀入即可,
但....這只是畫面顯示而已,
有個更大的問題須要解決,
對目前vfp來說, 這就難了!
....... |
我覺得由上面的分析再配合 #DEFINE 及 #INCLUDE 就可完成,但HELP裡寫說#INCLUDE 後面可加路徑,測試後居然不行耶,不知我哪裡做錯了
如:
先判斷目前選擇語系再決定目錄
IF SYS.LANCODE == 'TW'
GCLANGUAGEPATH = GCTXTPATH+'LANGUAGE\TW\'
ELSE
GCLANGUAGEPATH = GCTXTPATH+'LANGUAGE\CN\'
ENDIF
#INCLUDE GCLANGUAGEPATH+"TEST.H" --> 這樣寫是錯的
請各位大大指點一下
TKS
nelsonchuang 大大寫說用INI的方式也是很不錯的,兩種方法好像很相似
如將 TEST.H -->EXCLUDE 後,也可用文字檔編輯裡面的資料
(副檔名好像不一定要用.H,也可用.INI或任何附檔名)
希望此方法對各位有幫助,但需先解決上述路徑的問題 |
|
回頂端 |
|
|
nelsonchuang
註冊時間: 2003-09-04 文章: 563 來自: 臺灣
第 9 樓
|
發表於: 星期二 六月 26, 2007 5:02 pm 文章主題: |
|
|
引言回覆: |
.....
#INCLUDE GCLANGUAGEPATH+"TEST.H" --> 這樣寫是錯的
請各位大大指點一下
TKS
nelsonchuang 大大寫說用INI的方式也是很不錯的,兩種方法好像很相似
如將 TEST.H -->EXCLUDE 後,也可用文字檔編輯裡面的資料
(副檔名好像不一定要用.H,也可用.INI或任何附檔名)
希望此方法對各位有幫助,但需先解決上述路徑的問題 |
我現在進行的一個案子,就是用我自己說的方式來作,不過由於案子只進行了約1/2還需要3個月至半年左右才能完成,現在暫時沒辦法提供參考及測試.
回頭來說,我個人之前的說法在現在的案子是可行的,但是仍只限於英文版的部份
,因為我不懂其它語言. _________________ 大家好,請多指教 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4215 來自: Taipei,Taiwan
第 10 樓
|
發表於: 星期二 六月 26, 2007 5:23 pm 文章主題: |
|
|
INI ,INCLUDE 檔的讀取都是循序的 (由第一行讀到最後一行)
要注意速度 (行數)
DBF 則無法放入 UNICODE 字串,
必須先轉換為WINDOWS 特殊語系字串才可以.
我自己的方式原則上混合了 catjoke 兄 與 nelsonchuang 兄.
只是因為由繁體中文硬變成其他語系,
所以預設搜尋條件不是 英文,
也允許在RUNTIME 變換 語系/詞彙
我這種做法實際上這樣也不好.
只是不得已的選擇.
我作的是由繁體中文變成越南文. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4215 來自: Taipei,Taiwan
第 11 樓
|
發表於: 星期五 六月 13, 2008 2:18 pm 文章主題: |
|
|
更正一小下,
正如 Chris Lee 老師所說,
DBF並非不能儲存UNICODE資料,
而是VFP 標準物件無法顯示 UNICODE.
只能利用CODEPAGE 切換顯示 SBCS/DBCS 字型,
要顯示其他CODEPAGE支援的文字必須事先處理好
DBF 儲存UNICODE時,
其實與儲存二進位資料無異,
unicode一個中文字4BYTE,就是裝進去4BYTE,
unicode一個半形英文字2BYTE,裝進是就是2BYTE (實際上是ASCII Ccde+0x00) _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4215 來自: Taipei,Taiwan
第 12 樓
|
發表於: 星期五 六月 13, 2008 2:29 pm 文章主題: |
|
|
另外說到翻譯ini,
我的作法是用 excel 檔作原始對照檔,
再處理成 dbf 格式的辭典檔.
不過翻譯人員的素質真的是一大問題. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|