动态图文结合
2005-01-14 13:08
218 查看
IBM已经有一篇文章介绍动态图文结合输出的文章, 由于此篇文章中使用了SUN的JPEG特殊类:com.sun.image.codec.jpeg.*;我个人认为通用性不好,利用jdk1.4的新特点,也完全可以作到:
现将本人实践的动态图文结合javabeans的核心公布如下:
只要jsp将相关参数通知这个bean,就会轻松产生自己的图文,下图我自己在linux上调试的结果,由于linux没有安装字库,所以下图中文不正常显示,不过该程序我在中文win2000下调试正常通过:
原图:
效果图
现将本人实践的动态图文结合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()); } |
原图:
效果图
相关文章推荐
- Servlet 实现动态图文结合输出
- Servlet实现动态图文结合输出
- Servlet实现动态图文结合输出
- EChats结合PHP,MYSQL,利用ajax动态数据添加。
- SurfaceView与Canvas的结合实现气泡动态壁纸
- 浅谈Android中的MVP与动态代理的结合
- angularJS与bootstrap结合实现动态加载弹出提示内容
- RemoteViews实现自定义通知栏结合BroadCastReceiver实现动态交互
- jQuery结合CSS制作动态的下拉菜单
- 动态Quartz任务调度(Spring结合Quartz)
- java--jsp+ssh+select动态结合数据和选择(解)
- scrapy和selenium结合抓取动态网页
- ECharts概念学习系列之ECharts结合phpStudy使用(图文详解)
- 技巧篇:结合反射技术实现多算法动态加密
- JavaScript结合PHP实现网页制作中双下拉菜单的动态实现
- html5游戏开发--"动静"结合(一)-动态画面的实现
- 第 8 章 动态管理资源结合自定义登录页面
- bootstrap-typeahead结合ajax动态提示
- 动态Linq(结合反射)
- Android开发之ContentProvider结合LoaderManager加载数据(图文源代码分享)