实现将两压缩好的图片 写在一张画布上
思路,先成一个足够大的画布 放入两张相片
以下代码需要改进
import java.awt.AlphaComposite;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import javax.imageio.ImageIO;
public class IMG {
/**
*
* @param filesrc
* @param logosrc
* @param outsrc
* @param x 位置
* @param y 位置
*/
public void composePic(String filesrc,String logosrc,String outsrc,int x,int y) {
try {
File bgfile = new File(filesrc);
Image bg_src = javax.imageio.ImageIO.read(bgfile);
File logofile = new File(logosrc);
Image logo_src = javax.imageio.ImageIO.read(logofile);
int bg_width = bg_src.getWidth(null);
int bg_height = bg_src.getHeight(null);
int logo_width = logo_src.getWidth(null);;
int logo_height = logo_src.getHeight(null);
BufferedImage tag = new BufferedImage(bg_width, bg_height, BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = tag.createGraphics();
g2d.drawImage(bg_src, 0, 0, bg_width, bg_height, null);
g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP,1.0f)); //透明度设置开始
g2d.drawImage(logo_src,x,y,logo_width,logo_height, null);
g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER)); //透明度设置 结束
FileOutputStream out = new FileOutputStream(outsrc);
ImageIO.write(tag, "jpg", out);//写图片
/* JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(tag);*/
out.close();
}catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String args[]) {
Long star = System.currentTimeMillis();
IMG pic = new IMG();
pic.composePic("f:\\7.jpg","f:\\6.jpg","f:\\out.jpg",490,360);
Long end =System.currentTimeMillis();
System.out.print("time====:"+(end-star));
}
}
相关推荐
Java开发过程中,常用的实用类会使我们的开发变得更便捷,减少代码量。
java开发软件,包括常用开发jar包,开发工具,实用性好,节省安装时间,你值得拥有。
我们将一系列需要用的验证信息整理在一个类,实现我们的封装继承多态面向对象的思想,更有利于我们的项目开发。
《Java实用系统开发指南》利用8个综合实例介绍了多个Java系统的设计和开发,重点描述了J2EE实用系统的架构设计和应用。《Java实用系统开发指南》的特点是从可复用的面向对象设计的高度总结出解决同类问题的通用规律...
JAVA常用类,java封装类,String类和StringBuffer类......
Java实用系统开发
Java开发人员:手册中的内容能够帮助Java开发人员提高开发效率、减少犯错概率,是Java开发人员的实用参考指南。 前端开发人员:前端开发人员也需要了解一些Java知识,该手册能够为他们提供Java基础知识和实践指导。 ...
《Java Web应用开发实用教程》练习答案.docx
这是一款专门针对手机java软件合成的一个工具软件,合成后的软件可以同时运行,类似于后台运行,但又不是真正意义的后台运行@
Java_Web应用开发技术实用教程,适合初学者,易懂
合适研究底层研发员,但,一般程序员也必须掌握的要点 JDK研究系列--》util实用类util实用类(java.util part2)
Java Web应用开发技术实用教程 大学应用教程
《远标软件开发名企就业系列:Java面试关键与综合软件项目开发全程实战》不仅系统地讲解了Java编程的基础知识以及综合软件项目实战开发,而且完全再现了Java技术达人阿蜜果曾经精彩实用的学习经验以及丰富的JavaWeb...
本书是国人原创的第一本涉及框架、组件构件等重用概念的Java畅销书,该书通过8个系统,指出了一个成熟Java/J2EE系统设计开发的正确之道:Model(建模)、Patterns(模式)和Framework(框架)。 需求UML分析与域...
JAVA实用工具类
《Java EE实用开发指南:基于Weblogic+EJB3+Struts2+Hibernate+Spring》是一本讲解如何使用Weblogicl0.3+EJB3+JPA+Struts2+Hibernate+Spring开发Java Web应用程序的实用性图书,书中在具体讲解SSH2开发技术的同时,...
Java+Web开发实践教程ppt课件Java实用源码整理learns
本书共12章,从程序设计方法讲起,详细介绍了Java开发环境、语法知识、数组、类、对象、继承、接口等面向对象程序设计和开发的知识及应用,同时包括异常处理、输入输出方法、图形图像、多媒体、Applet等方面的内容。...
Java Web应用开发实用教程 课件 教学PPT 作者 龚永罡 详细的习题答案,值得你的学习
本书利用8个综合实例介绍了多个Java系统的设计和开发,重点描述了J2EE实用系统的架构设计和应用。此处为8个综合实列的源代码