5

那么基本上,在 SDL 或 OpenGL 游戏或应用程序中如何处理非西方输入?谷歌搜索显示http://sdl-im.csie.net/但这似乎不再维护或可用。只是为了查看我不得不使用谷歌缓存的页面。

澄清一下,在应用程序向用户显示非西方语言文本方面,我没有任何问题。这是一个已解决的问题。有许多可用的 unicode 字体,以及将文本处理成字形然后处理成显示表面的许多不同方法。

我朝相反的方向跑了一次犯规。即使我的程序可以安全地处理任意编码的文本数据,如果碰巧包含一个需要多次击键才能产生的字符,用户也无法实际输入他们的姓名。

4

3 回答 3

3

您对SDL_EnableUNICODE(). 当您启用 unicode 翻译时,您可以使用结构unicode字段SDL_keysym根据键入的关键用户获取 unicode 字符。

一般来说,我认为每当您进行文本输入(例如,用户专注于文本框)时,您应该使用 unicode 字段而不是尝试自己进行翻译。

是我们在 YATC 中所做的事情。并不是真正应该如何做事的光辉榜样,而是展示了该unicode领域的使用。

于 2009-03-26T10:56:18.197 回答
1

通常每个人最终都会使用 unicode 作为文本来国际化他们的应用程序。

我不记得 SDL 或 OpenGL 都没有实现任何会阻止您实现国际输入/输出的东西,除非它们对此没有帮助。

您可以使用 OpenGL 上的实用程序来使用 .ttf 字体进行渲染。

于 2008-12-30T12:32:25.037 回答
0

看来现在有一个关于这个主题的谷歌夏季代码项目,适用于X11MacOS X

于 2009-05-30T22:40:57.163 回答