java使用Graphics2D绘制文字解决模糊的问题

Graphics2D绘制文字默认情况下会有锯齿,设置抗锯齿后出现模糊,经过多次尝试得出非技术性的解决方案,但是确实有效果。

java使用Graphics2D绘制文字解决模糊的问题_第1张图片
效果对比图.png

原理是在绘制正文前,先用阴影颜色绘制一遍文字,代码如下:

g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);//设置抗锯齿
g2d.setPaint(new Color(0, 0, 0, 64));//阴影颜色
g2d.drawString(txt, x, y);//先绘制阴影
g2d.setPaint(Color.BLACK);//正文颜色
g2d.drawString(txt, x, y);//用正文颜色覆盖上去

你可能感兴趣的:(java使用Graphics2D绘制文字解决模糊的问题)