JAVA 在图像处理中的应用
相信大家平时碰到过一些在JAVA中对图像进行处理的需求,比如需要对上传的图片加上自己的签名或图标,或者生成和解析动态的GIF图片,以及处理PSD文件图像信息。本文就JAVA在图像处理中一些基本应用进行了介绍。希望通过能够对大家在以后的图像处理中有些帮助。
一、对一个现有的图片进行文字和图标的合成
我们先从下面的这段简单的代码开始
import java.awt.*;
import javax.imageio.ImageIO;
import java.awt.image.*;
import java.io.*;
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);
&n
相关文档:
好久了,都想向学习JAVA的新人写点东西,因为我实在看不下去了,看不下去很多误导JAVA学习者的观点,遍及天下!网络让好的东西流行,可是往往也让错的东西出现的次数多了变的好像正确了,三人成虎,指鹿为马似乎在网络里更加容易发生,好了废话不说,请看我细细向你道来。
秘密一,学习JAVA好未必可以找到JA ......
//Java网络聊天服务器
import java.io.*;
import java.awt.*;
import java.net.*;
import java.util.*;
import java.awt.event.*;
public class ServerFrame extends Frame implements ActionListener{
int ScreenWidth,ScreenHeight;
Button CloseServer;
TextArea ServerStatus;
ServerThread ......
Java中I/O初探
实例:读取文件test.Txt
代码:
try {
FileReader fReader=new FileReader("c:\\java\\test.txt");
BufferedReader bReader=new BufferedReader(fReader);
while(true) {
String temp=bReader.readLine();
&nbs ......
1、 对象的初始化
(1) 非静态对象的初始化
在创建对象时,对象所在类的所有数据成员会首先进行初始化。
基本类型:int型,初始化为0。
如果为对象:这些对象会按顺序初始化。
※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。
构造方法的作用就是初始化 ......
instanceof是Java的一个二元操作符,和==,>,<是同一类东东。由于它是由字母组成的,所以也是Java的保留关键字。它的作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型的数据。举个例子:
String s = "I AM an Object!";
boolean isObject = s instanceof Object;
我们声明了一个St ......