【问题标题】:java swing jtextfiled unicode sinhalajava swing jtextfield unicode 僧伽罗语
【发布时间】:2013-07-08 09:59:03
【问题描述】:

***************************更新******************* ****************************************************** ** 我发现了一个类似的问题:

这里:same question by another user

这个细节很少,但我还是不能让它工作!

任何帮助都会很高兴被完全接受!


我想在 (J2SE)swing textfileds 中输入僧伽罗语单词,但它们在 Java 中显示不正确,记事本中的相同文本显示正确的单词。我该如何解决这个问题?

记事本图片: http://imageupper.com/i/?S0200010080011O13734602521426968

java图片: http://imageupper.com/i/?A0300010070011I13734604591427932

【问题讨论】:

  • 请在句首加一个大写字母。还要为单词 I 使用大写字母,以及 JEE 或 WAR 等缩写词和首字母缩略词。这使人们更容易理解和帮助。
  • 我认为您看到的字母相同,可能您只需将fontproperty 更改为textfield.setFont(..)
  • @Andrew Thompson,:) 谢谢! @nachokk,没用:(
  • mm 不知道,我还是觉得是字体
  • @nachokk,我找到了这个链接:linklink你是对的,它是关于字体的。

标签: java swing unicode fonts jtextfield


【解决方案1】:

两个图像中的字母相同,所以不是编码问题。

问题是您必须为文本字段设置正确的font。如果你没有字体,你可以创建它,检查这个setting custom font @AndrewThompson 回答 :)

【讨论】:

  • @stark9000 您是否创建了字体并设置为文本字段??
  • 嗯不知道xD,我不认为L&F是
  • @stark9000 你尝试改变字体样式了吗?
  • @nachokk,是的,没用。我认为它与“字形”有关。
  • 图片:link 字符“ශ්‍ර”是由 -> ශ් +‍ ර 当类型 ශ + ්‍ර 变成 ශ්‍ර ,在记事本中可以正常工作,在 Java 中不能工作
【解决方案2】:

编辑:与您提到的相同问题的其他用户是我。 :)

我发现,char 数据类型不足以渲染像“ශ්‍ර”这样的字母,因为它需要 3 个 8 位字符。 Java 语言不会仅仅因为我们斯里兰卡人想要渲染我们的字符而改变 char 数据类型的大小。我之前也有类似的问题,我是你在问题中提到的用户。

"ශ්‍ ර" 显示为每个字符有 2 个 8 位字符,这就是我们到目前为止所得到的。您可能想查看 SWT,因为根据我的经验,它可以很好地显示角色。

【讨论】:

    猜你喜欢
    • 2016-03-03
    • 1970-01-01
    • 2011-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-11
    • 2015-07-18
    相关资源
    最近更新 更多