Java绘制文字_Java绘制文字质量太低的解决方案?

本文探讨了Java在绘制文字时出现模糊的问题,并提供了一个代码示例。通过调整Graphics2D对象的设置,尝试提高文字绘制的清晰度。更新后的代码显示了如何创建高质量的文本图像,但仍然寻求更优解决方案。
摘要由CSDN通过智能技术生成

使用Graphics2D绘图结果如下:

05a92af06b0c558bddffdf0b52d16ce5.png

文字周边非常模糊。想要效果是:

d187d10b41d2c7d0a078a01cc6053cf2.png

请问如何使用java实现这种清晰的绘制文字的效果呢?

更新

代码如下:

public static void pressText(String targetImg, String pressText, String fontName, int fontStyle, int fontSize, Color color) {

try {

File file = new File(targetImg);

Image image = ImageIO.read(file);

int width = image.getWidth(null);

int height = image.getHeight(null);

BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

Graphics2D g = bufferedImage.createGraphics();

g.setFont(new Font(fontName, fontStyle, fontSize));

g.drawImage(image, 0, 0, width, height, null);

g.setColor(color);

g.drawString(pressText, 50, 100);

g.dispose();

ImageIO.write(bufferedImage, "jpg", file);

} catch (Exception e) {

e.printStackTrace();

}

}

public static void main(String[] args) throws IOException {

pressText("e://test//test1.jpg", "测试", "华文细黑", Font.PLAIN, 30, Color.RED);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值