netbeans linux 字体设置,Netbeans中的丑陋字体 - 如何让它使用系统字体? - Ubuntu问答...

问题描述

我在让Netbeans字体看起来很好看时遇到了问题,自从我尝试Ubuntu~8以来,这一直是个问题。由于某种原因,字体看起来只是在Netbeans中没有得到亚像素平滑,对于其他应用程序,它们看起来很完美。

看看截图是多么丑陋:

ffbeda0d8a12efe5b03bf2a1350bc8b3.png

它不仅仅是代码区域,而且应用程序中的每种字体都是这样的。我环顾四周,显然在.bashrc文件中添加以下行应该解决问题,但在我的情况下它没有:

export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=lcd'

它认为它可能只会影响基于Java的应用程序,但我无法测试另一个Java应用程序来检查字体。

有谁知道我该怎么做才能解决这个问题?如何让Netbeans使用系统字体?

最佳解决思路

正如评论中所述,这是Linux上的Java Swing应用程序的问题。 Swing确实使用了Gnome的字体平滑设置(停用,灰度或子像素) – 但它忽略了提示设置。它总是使用完全提示,如果你运行Ubuntu很少或没有字体提示(因为大多数人做的,因为很少暗示是默认设置)这将使字体显得与其他应用程序显著不同。像Eclipse这样的SWT应用程序很好,但如果你喜欢Netbeans,这对你没有帮助。

警告:对于以下解决方法,我只谈论编辑器字体,因为在IDE中,’s what’对我很重要。您也可以将它应用于菜单字体等,但这可能有点超过顶部。

我发现here唯一可用的解决方案:使用Fontforge编辑您选择的编辑器字体,并从字体本身中删除所有提示信息,然后将其保存为新字体并在Netbeans中使用。

sudo apt-get install fontforge

启动Fontforge

打开您选择的字体

Ctrl + A或edit -> Select -> Select all选择所有字符

提示⇒清除说明

Ctrl + Shift + F或element -> font info打开字体信息

重命名字体(例如原始名称+ ‘_nohints’)

通过file -> generate fonts将编辑后的字体保存在家中的.fonts目录中,确保使用Ubuntu读取的格式(参见下一步)

清除字体缓存fc-cache -rv – 按照其输出确保您的新字体文件被拾取(例如.sfd不会,但.ttf会这样做)。

运行Netbeans并使用您创建的字体作为编辑器字体

不,不完美,是的,有点麻烦,但仍然是一个不同的世界。希望有所帮助。

次佳解决思路

--laf Nimbus -J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=lcd

要么

-J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=lcd --laf Metal

到文件:netbeans.config。您可以在$ NETBEANS_HOME /etc /文件夹中找到它。从系统首选项中缩小应用程序字体。

第三种解决思路

我知道这是一个老问题,但在我寻求同样的问题时,我在这里尝试了所有的技巧而没有运气。我以为我只能忍受netbeans中可怕的文字。

基本上:Ubuntu 13.10,Netbeans(7.3),Infinality字体补丁到freetype,OpenJDK7,以及补丁来修复Swings惨淡的字体处理。它”just worked” !!!

如果链接死亡,请在此处复制:

安装freetype

$ sudo apt-get install libfreetype6

安装无限补丁

$ sudo add-apt-repository ppa:no1wantdthisname/ppa

$ sudo apt-get update

$ sudo apt-get install fontconfig-infinality

之后我不得不做以下事情:

$ sudo rm /etc/fonts/conf.avail/52-infinality.conf

$ sudo ln -s /etc/fonts/infinality/infinality.conf /etc/fonts/conf.avail/52-infinality.conf

要使用Windows 7,如字体渲染,请执行以下操作:

$ sudo /etc/fonts/infinality/infctl.sh setstyle win7

在/etc/profile.d/infinality-settings.sh中将USE_STYLE设置为”WINDOWS7″

安装字体修复了OpenJDK

$ sudo add-apt-repository ppa:no1wantdthisname/openjdk-fontfix

$ sudo apt-get update

$ sudo apt-get install openjdk-7-jdk

在.../etc/netbeans.conf中,

netbeans_default_options包括:-J-Dawt.useSystemAAFontSettings=lcd和-J-Dsun.java2d.xrender=true"

并设置netbeans_jdkhome="/usr/lib/jvm/java-1.7.0-openjdk-amd64"

这改变了我的Netbeans字体从1990年代可接受到现代的真棒。我现在可以使用Inconsolata作为我的Netbeans编辑器字体,它看起来很棒。

按要求进行屏幕截图:(实际文本比此捕获更清晰。捕获中的某些内容略微模糊)。

e8ce9fe52a3ca59e3950a125f09ee9a4.png

第四种思路

字体的anti-aliasing在Ubuntu Java Swing应用程序中无法正常工作。

加:

-J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=lcd

到netbeans_default_options字符串末尾的netbeans.config。

您可以在$ NETBEANS_HOME /etc /文件夹中找到配置文件(例如/home///etc/netbeans.conf)

例:

netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-Dnetbeans.logger.console=true -J-ea -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true -J-Dnetbeans.extbrowser.manual_chrome_plugin_install=yes -J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=lcd"

第五种思路

字体不是那么糟糕..

但是,这是一个Java应用程序,并作为处理字体的特殊方式。

如果只想更改字体大小,可以使用“–fontsize” parameter启动Netbeans:

netbeans --fontsize 12

如果你想改变字体类型,那么改变环境参数会有点困难,本文解释得非常好:

这是针对ArchLinux的,但我认为它也适用于Ubuntu,因为Java是一个通用软件。

第六种思路

我在Ubuntu 12.04和Netbeans 7.2上遇到了同样的问题。

我尝试将-J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=lcd添加到netbeans.conf但它没有解决问题。

然后我看到了有关Netbeans bug 215785线高的问题评论。在netbeans.conf中将编辑器行高设置为1.0以及AA设置解决了我的问题。

参考资料

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值