Java Swing - 更好的字体平滑

标签 java swing fonts smoothing

是否可以在 Java swing 应用程序中调整字体平滑?

这里是一些比较:

enter image description here

差异并不大,但如果您仔细观察,Adobe Story(以及许多其他 Flash 应用程序)具有更强更好的平滑效果。

我用 Java 编写文本编辑器,我想在 JTextPane 和 JLabels 上的应用程序中实现这种平滑。

最佳答案

根据您用来显示文本的对象,您需要对其进行自定义并覆盖负责绘制文本的方法

这是自定义 JTextArea 的示例

public class CustomTextArea extends JTextArea {

    @Override
    public void paintComponent(Graphics g) {
        Graphics2D g2 = (Graphics2D) g.create();
        g2.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
        super.paint(g);
    }

}

您可能需要对其进行更多修改,但这是基本概念

关于Java Swing - 更好的字体平滑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14964449/

相关文章:

java - Liberty OpenId 连接错误 403 : AuthorizationFailed

java - 如何测试 Netbeans 6.7 插件?

java - JPanel 从另一个类重绘

css - GTK+ 设置字体大小

java - 为什么 JVM 参数以 "-D"开头?

java - 我的循环不允许我输入用户输入来结束循环 :( (java)

java - 云加速 : Unable to log out (android/Java)

swing - 绘制汽车时出现黑屏或找不到符号错误

css - 在不同的页面中具有不同的字体粗细/类型

c# - 使用对 EnumFontFamiliesEx 的 DLL 调用在 C# 中枚举事件字体让我很沮丧