NetBeans无法正确显示UTF8 Unicode字符(表情图标) [英] Netbeans not displaying UTF8 unicode characters (emoticons) correctly

查看:9
本文介绍了NetBeans无法正确显示UTF8 Unicode字符(表情图标)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法在NetBeans的代码(或纯文件)中显示这些字符。

✰☆★👌👍🙏☞☛👉❸➂❤♡💛🎔💕💋💍📷✉🖂

相反,它们显示为白色方块,如下所示:

☐☐☐☐☐☐☐☐☐☐☐☐☐☐☐☐☐☐☐☐☐

我正在使用NetBeans IDE 8.0.2。我已经在../etc/netbeans.conf中设置了-J-Dfile.encoding=UTF-8。在我的项目属性中,我设置了Encoding : UTF-8。工具>选项>字体&;颜色>默认>字体>快递新闻13。

有趣的是,当我使用Notepad++6.9(并使用"Courier New"字体)打开相同的文本文件时,我可以很好地看到所有这些字符!Microsoft Word也可以正确显示它们。

我使用的是Windows 10。

另外两个有趣的注释:

  • 其他类型的心形字符()是否可以在使用Courier New 13的NetBeans IDE 8.0.2中使用。
  • 更改为Courier New 13以外的字体(在NetBeans中)有时会导致某些字符正确显示。
    • 但我真的希望在NetBeans中继续使用Courier New 13,并且我希望修复NetBeans,使其正确显示所有这些字符(就像Notepad++和其他程序已经做的那样)。

推荐答案

若要解决此问题,您需要找到支持这些符号的字体,然后:

  • (可能)下载并安装该字体。
  • 在NetBeans中有两个位置设置字体(对于编辑窗口,设置字体和颜色;对于输出窗口,设置字体)。

我在an answer to this SO post中指定了执行所有这些操作的详细信息。

一种解决方案是将编辑器和输出窗口的NetBeans字体都更改为Segoe UI符号。不需要下载字体,因为NetBeans 8.2中已经提供了字体。以下是一个测试程序的源代码和输出:

...当我使用记事本++6.9(和 使用"Courier New"字体),我可以很好地看到所有这些字符! Microsoft Word也可以正确显示它们。

我不使用记事本++或Word,但在Windows写字板中会发生以下情况:

  • 如果打开写字板,字体显示为Calibri 11
  • 当我粘贴OP中的符号字符串时,它显示正确,但字体重置为Segoe UI符号。可能是写字板识别到Calibri 11无法处理粘贴的文本,因此选择了可以处理的替代字体。
  • 如果我在符号字符串的上方或下方键入文本,字体将再次重置为Calibri 11。如果我使用Courier而不是Calibri,也会发生同样的情况。

因此WordPad显然允许文档使用多种字体,据我所知,NetBeans编辑器不支持这一点。您确定Word和记事本++确实在使用Courier New 13呈现符号吗?写字板绝对不是。

我真的很想在NetBeans中继续使用Courier New 13,我 我想修复NetBeans,以便它正确地显示所有这些内容 字符

由于Courier New 13是NetBeans中的单间距字体,因此可以预料到它不能处理OP中的可变宽度符号,而且在任何情况下它都不支持那些比Courier字体年轻得多的符号。我不认为NetBeans本身有什么需要"修复"的。

您仍然可以将OP中的符号字符放在程序源代码中,但需要将它们指定为Unicode字符串,当然,然后您可以继续使用Courier New字体。有关示例,请参阅上面屏幕截图中的代码。

这篇关于NetBeans无法正确显示UTF8 Unicode字符(表情图标)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆