记录java合并两张图片的操作代码

public static void main(String args[]) {
try {
// 读取第一张图片
File fileOne = new File("F:/workPhotos/IMG_2660.PNG");
BufferedImage ImageOne = ImageIO.read(fileOne);
int width = ImageOne.getWidth();
// 图片宽度
int height = ImageOne.getHeight();
// 图片高度
// 从图片中读取RGB
int[] ImageArrayOne = new int[width * height];
ImageArrayOne = ImageOne.getRGB(0, 0, width, height, ImageArrayOne,
0, width);
// 对第二张图片做相同的处理
File fileTwo = new File("F:/workPhotos/IMG_2661.PNG");
BufferedImage ImageTwo = ImageIO.read(fileTwo);
int[] ImageArrayTwo = new int[width * height];
ImageArrayTwo = ImageTwo.getRGB(0, 0, width, height, ImageArrayTwo,
0, width);
// 生成新图片
// BufferedImage ImageNew = new BufferedImage(width * 2, height,
// BufferedImage.TYPE_INT_RGB);
BufferedImage ImageNew = new BufferedImage(width*2, height*2,
BufferedImage.TYPE_INT_RGB);
ImageNew.setRGB(0, 0, width, height, ImageArrayOne, 0, width);
// 设置左半部分的RGB
// ImageNew.setRGB(width, 0, width, height, ImageArrayTwo, 0, width);// 设置右半部分的RGB
// ImageNew.setRGB(0, height, width, ImageOne.getHeight()+ImageTwo.getHeight(), ImageArrayTwo, 0, width);// 设置右半部分的RGB
ImageNew.setRGB(0, height, width, height, ImageArrayTwo, 0, width);
// 设置右半部分的RGB
File outFile = new File("F:/workPhotos/aaaa.PNG");
ImageIO.write(ImageNew, "png", outFile);
// 写图片
}
catch (Exception e) {
e.printStackTrace();
}
}

猜你喜欢

转载自www.cnblogs.com/wangxc20181130/p/11138329.html
今日推荐