用Java编程如何实现合并图片

  对于很多用Java实现图片合并的方法有很多,下面本人就分享一个用Java实现图片合并的代码给大家,具体如下:

  1. package com.test;

  2. import java.io.File;

  3. import java.awt.image.BufferedImage;

  4. import javax.imageio.ImageIO;

  5. public class ImageCombineTest {

  6. public static void main(String args[]) {

  7. try {

  8. // 读取第一张图片

  9. File fileOne = new File("/Users/coolcloud/Pictures/Art/lena-2.jpg");

  10. BufferedImage ImageOne = ImageIO.read(fileOne);

  11. int width = ImageOne.getWidth();

  12. // 图片宽度

  13. int height = ImageOne.getHeight();

  14. // 图片高度

  15. // 从图片中读取RGB

  16. int[] ImageArrayOne = new int[width * height];

  17. ImageArrayOne = ImageOne.getRGB(0, 0, width, height, ImageArrayOne,

  18. 0, width);

  19. // 对第二张图片做相同的处理

  20. File fileTwo = new File("/Users/coolcloud/Pictures/Art/lena-2.jpg");

  21. BufferedImage ImageTwo = ImageIO.read(fileTwo);

  22. int[] ImageArrayTwo = new int[width * height];

  23. ImageArrayTwo = ImageTwo.getRGB(0, 0, width, height, ImageArrayTwo,

  24. 0, width);

  25. // 生成新图片

  26. // BufferedImage ImageNew = new BufferedImage(width * 2, height,

  27. // BufferedImage.TYPE_INT_RGB);

  28. BufferedImage ImageNew = new BufferedImage(width*2, height*2,

  29. BufferedImage.TYPE_INT_RGB);

  30. ImageNew.setRGB(0, 0, width, height, ImageArrayOne, 0, width);

  31. // 设置左半部分的RGB

  32. // ImageNew.setRGB(width, 0, width, height, ImageArrayTwo, 0, width);// 设置右半部分的RGB

  33. // ImageNew.setRGB(0, height, width, ImageOne.getHeight()+ImageTwo.getHeight(), ImageArrayTwo, 0, width);// 设置右半部分的RGB

  34. ImageNew.setRGB(0, height, width, height, ImageArrayTwo, 0, width);

  35. // 设置右半部分的RGB

  36. File outFile = new File("/Users/coolcloud/Pictures/generatepic.jpg");

  37. ImageIO.write(ImageNew, "png", outFile);

  38. // 写图片

  39. }

  40. catch (Exception e) {

  41. e.printStackTrace();

  42. }

  43. }

  44. }

  如有不懂的朋友可以加我Q,或者加群号来一起学习,大家一起学习编程分享视频,希望能帮助喜欢JAVA的朋友。有需要帮助的也可以联系我。

时间: 2024-10-31 16:44:23

用Java编程如何实现合并图片的相关文章

Java横向、纵向合并图片

进行图片对比时候想把两张有差异的图片放到一起,方便人工查看下,在网上搜了一些,有纵向合并的. 将纵向合并的自己调整了下,源码如下: import java.io.File; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; public class TestPic { public static void main(String[] args) { xPic(); } public static void xPi

Java Swing界面编程(7)---JButton设置图片

package com.beyole.util; import java.awt.Font; import java.io.File; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; public class test5 { public static void main(String[] args) { JFrame fra

Java编程思想之8多态

这一章看下来,感觉比较混乱.乱感觉主要乱在8.4  8.5. 开始读的时候,感觉8.1 8.2 8.3都挺乱的.读了两遍后发现前三节还是比较有条理的. 8.1主要讲了什么是多态,多态的好处. 8.2主要讲了什么情况会发生多态?? 8.3主要讲了构造器内部里面的方法调用会发生多态. 8.4就一页,而且感觉一般用不到.用到了再看也行. 8.5也很简单,相当于一个总结,一个补充(向下转型) 我主要根据书上的内容,总结两个内容: 1.什么是多态,多态的好处: 2.什么情况下会发生多态?为什么这些情况下会

Java编程思想重点笔记(Java开发必看)

Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面 试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理解题(比如is-a关系和has-a关系的区别),也有深入的涉及RTTI和JVM底层 反编译知识. 1. Java中的多态性理解(注意与C++区分) Java中除了static方法和final方法(private方法本质上属于final方法,因为不能被子类访问)之外,其它所有的方法都是动态绑定,这意

1.JAVA 编程思想——对象入门

对象入门 欢迎转载,转载请标明出处:    http://blog.csdn.net/notbaron/article/details/51040219 如果学JAVA,没有读透<JAVA 编程思想>这本书,实在不好意思和别人说自己学过JAVA.鉴于此,蛤蟆忙里偷闲,偷偷翻看这本传说中的牛书. 面向对象编程OOP具有多方面吸引力.实现了更快和更廉价的开发与维护过程.对分析与设计人员,建模处理变得更加简单,能生成清晰.已于维护的设计方案. 这些描述看上去非常吸引人的,不过蛤蟆还是没啥印象(至少到

Google Java编程风格指南(转)

目录 前言 源文件基础 源文件结构 格式 命名约定 编程实践 Javadoc 后记 前言 这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格. 与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题, 同时也讨论一些约定及编码标准.然而,这份文档主要侧重于我们所普遍遵循的规则, 对于那些不是明确强制要求的,我们尽量避免提供意见. 1.1 术语说明 在本文档中,除非另有说明: 术语cl

谷歌Java编程规范

Google Java编程风格指南 January 20, 2014 作者:Hawstein 出处:http://hawstein.com/posts/google-java-style.html 声明:本文采用以下协议进行授权: 自由转载-非商用-非衍生-保持署名|Creative Commons BY-NC-ND 3.0 ,转载请注明作者及出处. 目录 前言 源文件基础 源文件结构 格式 命名约定 编程实践 Javadoc 后记 前言 这份文档是Google Java编程风格规范的完整定义.

Google Java编程风格指南

作者:Hawstein出处:http://hawstein.com/posts/google-java-style.html声明:本文采用以下协议进行授权: 自由转载-非商用-非衍生-保持署名|Creative Commons BY-NC-ND 3.0 ,转载请注明作者及出处. 目录 前言 源文件基础 源文件结构 格式 命名约定 编程实践 Javadoc 后记 前言 这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Googl

71.JAVA编程思想——JAVA与CGI

71.JAVA编程思想--JAVA与CGI Java 程序可向一个服务器发出一个CGI 请求,这与HTML 表单页没什么两样.而且和HTML 页一样,这个请求既可以设为GET(下载),亦可设为POST(上传).除此以外,Java 程序还可拦截CGI 程序的输出,所以不必依赖程序来格式化一个新页,也不必在出错的时候强迫用户从一个页回转到另一个页.事实上,程序的外观可以做得跟以前的版本别无二致. 代码也要简单一些,毕竟用CGI 也不是很难就能写出来(前提是真正地理解它).所以我们准备办个CGI 编程