专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Java教程 » javajai:用JAI扩展Java的图像处理能力 »正文

javajai:用JAI扩展Java的图像处理能力

来源: 发布时间:星期四, 2008年12月18日 浏览:2次 评论:0
Java图像处理能力不断地在增长但是将个如PNG或者JPEG格式文件写入磁盘或从磁盘读取这样操作仍然是种巫术解决方案是使用Java Advanced Imaging(JAI)APIJAI可以在SunJava网站WebSite下载在JDK1.4javax.imageio包里已经包括了它 有针对Windows平台exe格式JAI安装文件可以下载 但是没有针对UNIX和Linux安装文件尽管JAI可以在纯Java模式下运行但它也为Windows、Linux、UNIX提供了本地库使用它们可以提高运行速度 下面例子是安装在Apple机OS X系统上因此我们选择了纯Java模式为了安装JAI你需要个jai tar.gz文件把 3个重要jar文件mlibwrapper_jar.jar、jar_codec.jar和jar_core.jar移到你path环境变量指定目录下我们推荐把它们放到你JDKjre/lib/ext目录下 实际上JAI是Java中个临时系统这里只有个名为JAI顶层类和很少几个辅助思路方法而没有很多思路方法让人去学习这些思路方法里个参数是操作名所以代码象这样: src = JAI.create("fileload", .. ); JAI.create("extrema", src, ...); JAI.create("histogram", src, ...); 这样系统在使它和你自己或者第 3方功能可以很容易结合在同时也使得类型间耦合更松散这进而使得在这的下开发更困难个AWT图形转换成个PNG文件需要下列代码片断: import java.awt.Image; import java.awt.image.renderable.ParameterBlock; import javax.media.jai.JAI; import javax.media.jai.PlanarImage; ..... Image img = .... OutputStream out = .... ParameterBlock pb = ParameterBlock.add(img); PlanarImage src = (PlanarImage) JAI.create("awtImage", pb); JAI.create("encode", src, out,"PNG", null); 以上例子演示了两种给create思路方法传参数思路方法其中较新思路方法是使用个包含了所有参数ParameterBlock我们在对awtImage操作中是这么做思路方法使用个重载思路方法它现在是deprecated(即被替代旧思路方法不推荐使用)思路方法但在这个例子中我们为encode操作使用了它 上面代码会将个图像按PNG格式编码并写到OutputStream中去如果你想对JAI进行进了解我们强烈推荐你去读JAI指南

相关文章

读者评论

  • 共0条 分0页

发表评论

  • 昵称:
  • 内容: