服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - java实现合并图片的方法示例

java实现合并图片的方法示例

2020-08-14 16:01酷云 Java教程

这篇文章主要介绍了java实现合并图片的方法,结合具体实例形式分析了java基于图片的读取、设置、生成等操作实现图片合并功能的相关实现技巧,需要的朋友可以参考下

本文实例讲述了java实现合并图片的方法。分享给大家供大家参考,具体如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.test;
import java.io.File;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
public class ImageCombineTest {
  public static void main(String args[]) {
    try {
      // 读取第一张图片
      File fileOne = new File("/Users/coolcloud/Pictures/Art/lena-2.jpg");
      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("/Users/coolcloud/Pictures/Art/lena-2.jpg");
      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("/Users/coolcloud/Pictures/generatepic.jpg");
      ImageIO.write(ImageNew, "png", outFile);
      // 写图片
    }
    catch (Exception e) {
      e.printStackTrace();
    }
  }
}
 

希望本文所述对大家java程序设计有所帮助。

延伸 · 阅读

精彩推荐