我正在开发一个相当大的基于Swing的应用程序(JPanels,JLabels等),我必须找出为什么文本抗锯齿(在JLabels等上)不起作用。
正如您所知,抗锯齿通常可以自动运行(无论如何使用Java 1.6),也就是说,当一个人创建一个简单的Swing-app(例如,只有一个带有JLabel的JPanel)时,JLabel上的文本将是抗锯齿开箱即用。无需System.setProperty("awt.useSystemAAFontSettings","on")
和/或System.setProperty("swing.aatext", "true")
。
但是这个应用程序不同,它没有开箱即用的抗锯齿,它不与System.setProperty("awt.useSystemAAFontSettings","on")
中的System.setProperty("swing.aatext", "true")
和/或main(String[] args)
进行抗锯齿,也不与{{ 1}}和/或-Dawt.useSystemAAFontSettings=on
作为VM参数。我已经尝试过这些以及我在本网站和互联网上可以找到的所有建议,但无济于事:这个应用程序从不反抗,无论我做什么或不做。
我现在没有选择了。所以我的问题是:
欢迎所有见解。
答案 0 :(得分:1)
答案 1 :(得分:1)
从1.6开始,它看起来像swing.aatext
is ignored。但是,正如@Andrew所指出的,awt.useSystemAAFontSettings
should work ......
您可能要做的其中一件事就是为Map
desktop property转出awt.font.desktophints
,只是为了看看是否设置了什么。