我尝试设置一些JTextComponent小部件(主要是JTextField组件)以Unicode格式输入文本。在这里,我需要渲染僧伽罗字符。我设置了Iskoola Pota字体 这在大多数情况下都可以正常工作,但在某些方面会失败。
带有一个或两个字符的字符可以正确呈现。
Ex: අම්මා, වයඹ, අධිකාරිය
但问题是3个字符的字符。
Ex: ප්රවෘත්ති (THIS IS RENDERED AS ප්රවෘත්ති)
ව්යාපෘතිය (THIS IS RENDERED AS ව්යාපෘතිය)
问题是ප්ර is rendered as (ප්ර)
和ව්යා is rendered as (ව්යා)
等字符。
屏幕截图如下。
图片在这里:http://i.stack.imgur.com/bQrQB.png 这里,අම්මා,වයඹ,අධිකාරිය正确渲染,但ප්රවෘත්ති和ව්යාපෘතිය字渲染不正确。
我已经更新了我的JDK版本和JRE。以下是NetBeans IDE中显示的版本详细信息。
Java: 1.7.0_40; Java HotSpot(TM) Client VM 24.0-b56
Runtime: Java(TM) SE Runtime Environment 1.7.0_40-b43
System: Windows 7 version 6.1 running on x86; Cp1252; en_US (nb)
我无法理解如何在我的程序中实现补充字符和代理对API jsr204
。非常感谢任何形式的帮助。
提前谢谢。
答案 0 :(得分:4)
尝试查看layoutGlyphVector如何使用三重字符。它提供正确的表示吗?如果是,您可以尝试设置自定义GlyphPainter,如此处所述http://java-sl.com/Scale_In_JEditorPane_GlyphPainter.html