易截截图软件、单文件、免安装、纯绿色、仅160KB

JAVA 在图像处理中的应用

相信大家平时碰到过一些在JAVA中对图像进行处理的需求,比如需要对上传的图片加上自己的签名或图标,或者生成和解析动态的GIF图片,以及处理PSD文件图像信息。本文就JAVA在图像处理中一些基本应用进行了介绍。希望通过能够对大家在以后的图像处理中有些帮助。
一、对一个现有的图片进行文字和图标的合成
我们先从下面的这段简单的代码开始
import java.awt.*;
import javax.imageio.ImageIO;
import com.sun.image.codec.jpeg.*;
/**
* @author Anders.Hu
* 2005-01-12
*/
public class Test {
public static void main(String[] args) {
try {
//读取模板图片内容
BufferedImage image = ImageIO.read(new FileInputStream("c:\\1.jpg"));
Graphics2D g = image.createGraphics();//得到图形上下文
g.setColor(Color.BLACK); //设置画笔颜色
//设置字体
g.setFont(new Font("宋体", Font.LAYOUT_LEFT_TO_RIGHT, 15));//写入签名
g.drawString("很好吃诶,要不要也来一口?",43, image.getHeight() - 10);
g.dispose();
FileOutputStream out = new FileOutputStream("c:\\2.jpg");
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
} catch(Exception e) {
e.printStackTrace();
}
}
}
相信大家看到这里已经知道了大致的操作过程,我想我还是在这里把基本的原理简单说明一下便于对后续内容的阐述:首先我们通过javax.imageio.ImageIO的read方法读取图像在BufferedImage中,然后我们可以通过BufferedImage的createGraphics方法取得图像的上下文便于对图像的处理,如加上自己喜爱的文字或图片等,最后调用JPEGCodec的encode方法进行JPEG编码,然后就是保存到文件中了。
这就是我运行上面代码的结果
需要提出的是JPEGCodec是非标准类,如果程序是运行JDK1.4以上版本的话,可以采取以下代码进行JPEG编码ImageIO.write(image, "JPEG", out);
可能在你的实际需求还要加入一些图标的修饰,要做到这一步,我们只需要在上面的代码中利用Graphics2D的drawImage方法做到。下面是加入图标的代码
public static void main(String[] args) {
try {
BufferedImage image = ImageIO.read(new FileInputStream("c:\\1.jpg"));
//读取图标
BufferedImage image_biao = ImageIO.read(new FileInputStream("c:\\i.jpg"));
Graphics2D g = image.createGraphics();
g.setColor


相关文档:

java 加密解密简单实现

【作者:qiushyfm 】
加密算法有很多种:这里只大约列举几例:
1:消息摘要:(数字指纹):既对一个任意长度的一个数据块进行计算,产生一个唯一指纹。MD5/SHA1
发送给其他人你的信息和摘要,其他人用相同的加密方法得到摘要,最后进行比较摘要是否相同。
2:单匙密码体制:DES:比较简便高效,密钥简短,加解密速度快,破译 ......

java 泛型

一、
使用泛型的好处在于,它在编译的时候进行类型安全检查,并且在运行时所有的转换都是强制的,隐式的,大大提高了代码的重用率。
请看下面这个例子
public class Gen<T> {
 private T ob; // 定义泛型成员变量
 public Gen(T ob) {
  this.ob = ob;
 }
 public T getOb() { ......

Google App Engine对Java支持情况一览

    *
      Google App Engine对Java支持情况一览
    * http://developer.51cto.com  2009-04-09 11:06  杨赛 译  51CTO.com  我要评论(0)
      Google App Engine的Java支持已发布。此次发布的重点在于其中的 ......

Java NIO API详解

Java NIO API详解

在JDK 1.4以前,Java的IO操作集中在java.io这个包中,是基于流的同步(blocking)API。对于大多数应用来说,这样的API使用很方便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO API作为一个基于缓冲区,并能提供异步(non-blocking)IO ......

java调用存储过程

先创建一个存储过程
create or replace function addvalue(value1 in number, value2 in number) return number is
result number;
begin
result:=value1+value2;
return(result);
end ;
下面是java调用
Connection conn = JDBCUtils.getConnection();
CallableStatement cs = conn.prepareCall("{? = call addval ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号