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アプリでは、次のようになります。
Ubuntu TextEditor では、次のようになります。
.png
編集:の代わりに画像を使用すると、パフォーマンスが低下しdrawText()
ますか? これはビジネス アプリケーションであり、滑らかなアニメーションが必要なゲームではありません。
編集: TextEditor の色と一致するように色を変更しましたが、実際には品質が少し向上しましたが、文字はまだ非常に細いです...「.」はほとんど見えません. gimp では、アンチエイリアスをオンにして適切なフォントでテキストを作成することにより、TextEditor の外観を再現できます。