我正在开发一个在线图像编辑工具。我想知道如何在图像右侧添加白色空间,以此为例,可以查看这个图片
我正在开发一个在线图像编辑工具。我想知道如何在图像右侧添加白色空间,以此为例,可以查看这个图片
你想从一张已有的图片中创建一个新的图片,在这个新的图片中左右两侧要有白色空间吗?
假设未填充的图片是一个称为'image'的BufferedImage。假设你希望每侧都有'w'个像素的空白区域。你需要做的是创建一个比原来更宽的新BufferedImage,然后将整个图像涂成白色,并最终将较小的图像绘制在其上方:
BufferedImage newImage = new BufferedImage(image.getWidth() + 2 * w, image.getHeight(), image.getType());
Graphics g = newImage.getGraphics();
g.setColor(Color.white);
g.fillRect(0, 0, image.getWidth() + 2 * w, image.getHeight());
g.drawImage(image, w, 0, null);
g.dispose();
如果有人遇到类似的问题,我强烈推荐使用imgScalr。你只需要加一行代码imageSource= Scalr.pad(imageSource,pad,Color.White);
就可以添加填充。
BufferedImage
对象;使用Graphics.fillRect()
将其涂成白色;用drawImage()
将图像绘制到左上角;然后保存你的新图像。