2008-12-27 97 views
5

那麼基本上,在SDL或OpenGL遊戲或應用程序中如何處理非西方輸入?谷歌搜索顯示http://sdl-im.csie.net/,但似乎並沒有維持或可用了。只是查看頁面,我不得不使用Google cacheSDL或PyGame國際輸入

爲了澄清,我沒有任何問題的應用程序顯示文字的非西方語言的用戶。這是一個解決的問題。有許多unicode字體可用,並有許多不同的方式將文本處理成字形,然後再處理到顯示錶面。

我在相反的方向犯規。即使我的程序可以安全地處理任何任意編碼的文本數據,如果用戶包含需要多次擊鍵產生的字符,用戶也無法實際鍵入其名稱。

回答

1

通常,每個人都只是最終使用unicode文本來國際化他們的應用程序。

我不記得SDL,也沒有OpenGL實現任何阻止你實現國際輸入/輸出的東西,除非他們既沒有幫助。

OpenGL上有許多實用程序可用於使用.ttf字體進行渲染。

3

您對SDL_EnableUNICODE()感興趣。啓用Unicode轉換時,可以使用SDL_keysym結構的unicode字段根據輸入的關鍵用戶獲取unicode字符。

一般來說,無論您何時進行文本輸入(例如,用戶專注於文本框),您都應該使用unicode字段,而不是嘗試自己進行翻譯。

Here's我們在YATC做的事情。這並不是一個應該如何完成的光輝榜樣,而是演示瞭如何使用unicode字段。