在Swing中使用印度语输入法输入文本时,英文字符不显示

| 我正在开发一个应用程序,该应用程序接受英语文本并使用自定义的第三方API进行音译为印度语(受支持的几种语言之一)。该应用程序针对Windows XP / 7和Ubuntu。 我们使用自定义输入法加载所需的印度字体,并使用它呈现文本。另外,用户可以通过输入英文字母并按空格键来纠正音译文本(类似于Google Transliterate的工作方式)。 问题在于,对于某些印度语字体,使用英语输入会显示出空的框字符(即使已检测到实际键入的字符并进行了相应的音译)。 我已经使用了Ubuntu附带的ttf-indic-fonts-0.5.0字体包,并且能够替换其中的一些字体。对于其他人,如果我从Windows复制相应的字体(我正在Windows 7上开发该字体),那么所有问题都将得到解决。 但是,我们无法使用我们的应用程序重新分发Windows字体,而是需要一个开放的替代方案。 除了试图找到替代字体之外,我们是否还有其他错误或需要检查,以确保使用印度字体时可以在JTextField中键入英文字符? 例如,从上述Ubuntu软件包中,旁遮普语的lohit_pa.ttf字体存在此问题。如果我复制旁遮普语的默认Windows字体(raavi.ttf),则可以正常工作。     
已邀请:
        我找到了解决问题的办法。我在Windows上安装了字体(打开字体,单击“安装”),然后使用“字符映射”浏览了内容。这些字体仅包含有关语言的字形,而没有英语。 我使用FontForge合并了2种字体。 (Fontforge的作者不再提供二进制文件-但是如果您可以访问Ubuntu,则可以从存储库中安装二进制文件。如果只有Windows,那么运气不佳)。 之后,我可以再次输入英语。     

要回复问题请先登录注册