使用透明背景保存缓冲图像
2022-09-02 23:01:01
我将签名的图像另存为.jpg图片。我使用graphic2d在图像上绘制签名的每个像素(使用签名平板电脑获得),它工作得很好,但我总是得到一个白色的背景。如果我想将签名放在PDF文档上,jpg图像的白色正方形的边框覆盖了PDF的一些单词。
我想得到的是保存具有透明背景的jpg图像,因此当我将其放在PDF上时,没有覆盖有白色图像背景的单词,而只是签名行。
这是保存缓冲图像的代码。它使用白色背景进行操作。
// This method refers to the signature image to save
private RenderedImage getImage() {
int width = tabletWidth;
int height = tabletHeight;
// Create a buffered image in which to draw
BufferedImage bufferedImage = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
// Create a graphics contents on the buffered image
Graphics2D g2d = bufferedImage.createGraphics();
// Draw graphics
g2d.setColor(Color.WHITE);
g2d.fillRect(0, 0, width, height);
drawPoints(Tablet.getPenPoints(), g2d, Color.BLACK);
// Graphics context no longer needed so dispose it
g2d.dispose();
return bufferedImage;
}
我试图将其设置为透明,但没有成功,所以我发布了这个工作部分。