ZT 动态图文结合
发表于:2007-07-04来源:作者:点击数:
标签:
现将本人实践的动态图文结合 java beans的核心公布如下: import java.io.*; import java.util.*; import java.awt.image.BufferedImage; import java.awt.Image; import java.awt.image.AffineTransformOp; import javax.imageio.ImageIO; import java.awt.ge
现将本人实践的动态图文结合
javabeans的核心公布如下:
import java.io.*;
import java.util.*;
import java.awt.image.BufferedImage;
import java.awt.Image;
import java.awt.image.AffineTransformOp;
import javax.imageio.ImageIO;
import java.awt.geom.AffineTransform;
import java.awt.Graphics2D;
import java.awt.Color;
import java.awt.Font;
..............
//生成BufferedImage实例,这是不需要真正显示时经常使用的类
BufferedImage Bi = ImageIO.read(F);
// 利用Graphics2D的新特性.
Graphics2D g2D = Bi.createGraphics();
//定义字体(楷体或宋体等) 及其大小
Font myfont=new Font("\u5b8b\u4f53",Font.PLAIN,20);
g2D.setFont(myfont);
//字体颜色为黑
g2D.setColor(Color.BLACK);
//需要写在图片上文字 注意:中文需要操作系统支持中文 如中文window,
//
linux下要安装中文字库,并使jdk1.4支持这个中文
String strs="hello everyone 中 文";
//在离顶部 和左边各为20处 写入文字,该处使用了对中文处理的getBytes功能.
g2D.drawString(new String(strs.getBytes("ISO8859_1")),20,20);
//必须使用,表示完成
g2D.dispose();
try {
//使用ImageIO写入图片
ImageIO.write(Bi, ext, ThF);
//原来是使用com.sun.image.codec.jpeg.*的功能,如下.需要
下载com.sun.image.codec.jpeg
// FileOutputStream out = new FileOutputStream(ThF);
// JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
// encoder.encode(Bi);
// out.close();
}catch (Exception ex) {
throw new Exception(" ImageIo.write error in CreatThum.: "+ex.getMessage());
}
只要jsp将相关参数通知这个bean,就会轻松产生自己的图文,下图我自己在linux上调试的结果,由于linux没有安装字库,所以下图中文不正常显示,不过该程序我在中文win2000下调试正常通过:
原文 http://www.jdon.com/idea/%B6%AF%CC%AC%CD%BC%CE%C4%BD%E1%BA%CF.htm
原文转自:http://www.ltesting.net