2012-12-04 72 views
0

我得到了一個典型的問題,並不確定哪種編程語言最適合用來解決它。編碼非英文字體

要求:

我想用美國標準鍵盤輸入我的母語腳本(正好泰米爾語,印度的語言)。 Google產品(Gmail)允許我們在從下拉框中選擇後鍵入tamil。但問題是,我想輸入文字處理器/ Adob​​e產品等。

有一些隨時可以使用的軟件來完成我的任務後,付出沉重的代價。

但我想用C/C++/Java編寫自己的代碼並使它們工作。

This鏈接提供了泰米爾語腳本的Unicode字符映射。

任何有關如何前進/實施的指導或任何鏈接參考,深表感謝。

加入:目前爲止我所見到的準備使用的軟件是他們啓動程序並開始輸入泰米爾語腳本。一旦完成,他們退出該程序,並啓用通常的英文鍵盤。我想知道程序的啓動如何重新映射字符以及我應該使用哪種語言編寫代碼。

+2

你應該指定一個平臺。 – unwind

+0

現在,我嘗試在Linux機器上。 – Learner

+0

正如你希望這可以在現有的可能或不可能是Java的程序中工作,我懷疑Java不是最好的選擇,因爲它不是爲了捕獲和重新映射現有程序的密鑰而設計的。 –

回答

1

據我瞭解你的問題,你需要在英文字母上的泰米爾語字母包裝。

我想你應該使用英文字母映射給你坦米爾信,因爲你沒有泰米爾語鍵盤。

因此,對於鍵盤上的每個鍵,如AB和所有你需要映射到你泰米爾人相應的字母。

當你輸入從鍵盤char那麼它會檢查這封信的ASCII值,並使用該表或映射就可以得到相應的wchar_t信,並相應地打印出來。

2

如果您正在使用Windows 7,那應該沒問題 - Windows支持多種鍵盤佈局和相應的字體和代碼頁。我剛安裝了支持泰米爾語鍵盤(雖然我不知道什麼樣的符號代表),並寫了(和翻譯)在MSVC2010這個小程序:

#include <string> 
#include <iostream> 

int main() 
{ 
    auto ந = 5; 
    std::string த = "Whatsup?: "; 
    std::cout << த << ந << '\n'; 
} 

的Java以及C++ 11支持Unicode的源代碼和允許標識符包含unicode字符。這應該與任何支持unicode的編輯器和IDE無縫協作。