基本上,在SDL或OpenGL游戏或应用程序中如何处理非西方输入?谷歌搜索显示http://sdl-im.csie.net/,但似乎不再维护或可用.只是为了查看我必须使用的页面Google cache.
为了澄清,我在向用户显示非西方语言文本的应用程序方面没有任何问题.这是一个已解决的问题.有许多可用的unicode字体,以及将文本处理为字形然后进入显示表面的许多不同方法.
我在相反的方向犯规.即使我的程序可以安全地处理任意编码的文本数据,如果用户碰巧包含需要多次击键的字符,用户也无法实际输入他们的名字.
最佳答案
您对
SDL_EnableUNICODE()
感兴趣.启用unicode转换后,您可以使用SDL_keysym结构的unicode字段根据键入的关键用户获取unicode字符.
一般来说,我认为无论何时进行文本输入(例如用户关注文本框),您都应该使用unicode字段而不是自己尝试翻译.
Here’s我们在YATC做过的事情.并不是一个应该如何完成事情的光辉榜样,而是演示了unicode字段的使用.