这是Windows 7(Java JDK 8u45)上JavaFX(lcd和灰色字体平滑)和Swing(默认)中相同文本的屏幕截图:
JavaFX和Swing字体都是相同的(系列:Segoe UI,样式:常规,大小:12).
JavaFX 8(lcd)
JavaFX 8(灰色)
摇摆
差异不大,但是很明显.
注意:我不想在JavaFX中包含Swing组件.
tl; dr:不可能通过任何可用的JavaFX字体旋钮组合来获取Swing字体.看来你唯一的选择是挖掘JavaFX源代码,修复它和/或将它带到JavaFX邮件列表.
Linux上的差异是如此之大,以至于它几乎无法用于任何类型的GUI,您可以长时间阅读文本.我做了与Swing的公平比较并报告了两次[1] [2]:
它在Windows上有所改善,但正如你所说,与Swing公平对比,差异是显而易见的:https://i.imgur.com/I7wLuYJ.png
从第二个错误报告中引用Phillip:
造成这种差异的主要原因(唯一?)是FX 设计 和所有平台(包括Windows)都会使文本不显示,以便保留形状.
请注意,他对不公平比较的评论对于两个错误报告都是错误的.在第二个报告中,我制作了测试用例,其中我专门使用了相同的颜色,字体和大小,并为可用旋钮的所有可能组合制作了结果.
我使用rpmfusion的freetype-freeworld对Fedora 23进行了测试:
Xft.autohint: 0
Xft.antialias: 1
Xft.hinting: 1
Xft.hintstyle: hintfull
Xft.rgba: rgb
Xft.lcdfilter: lcddefault
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
656 次 |
| 最近记录: |