gpt4 book ai didi

java - Swing 文字看起来很糟糕

转载 作者:行者123 更新时间:2023-11-30 05:52:38 24 4
gpt4 key购买 nike

我正在覆盖 JCOmponent 的 paintComponent() 方法并在窗口中绘制文本。我在 Ubuntu 上运行并使用字体“Ubuntu Mono”(Ubuntu 文本编辑器的默认字体)。当我的 Java 应用程序显示文本时,它看起来既软弱又模糊。我做错了什么?

我正在这样绘制文本:

graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
graphics.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
graphics.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
Font font = new Font("Ubuntu Mono", Font.PLAIN, 18);
fontMetrics = graphics.getFontMetrics(font);
graphics.setFont(font);
graphics.drawString(value, getX(), getY() + fontMetrics.getHeight());

在我的 java 应用程序中,它看起来像这样:

Java app text

在 Ubuntu TextEditor 中,它看起来像这样:

enter image description here

编辑:如果使用 .png 图像而不是 drawText(),性能会受到影响吗?这是一个商业应用程序,而不是一个需要流畅动画的游戏。

编辑:我更改了颜色以匹配 TextEditor 的颜色,这实际上对质量有一点帮助,但字符仍然更细……您几乎看不到“.”。在 gimp 中,我可以通过创建带有正确字体和抗锯齿功能的文本来重新创建 TextEditor 的外观。

最佳答案

奇怪的是,我尝试使用“Monospaced”而不是“Ubuntu Mono”:

graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

它看起来对我来说已经足够好了。这就是我要使用的。

关于java - Swing 文字看起来很糟糕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11486234/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com