关于Java Advanced Imaging(JAI)的一点积累

JAI的确是个不错的东东,图形渲染上提供了比较好的类封装以及跨平台性。不知道为何JAI就在2006年止步在1.1.3的版本下了,莫非Sun(Oracle)真的去做Java 2D的丰富去了。暂时还没有看到Java 2D方面的资料,先把JAI的内容贴出来。

 

下载JAI可以去这里 http://download.java.net/media/jai/builds/release/1_1_3/

 

想要了解它的安装,可以去这里查看各操作系统的安装方法 http://download.java.net/media/jai/builds/release/1_1_3/INSTALL.html

 

引了一段《Programming in Java Advanced Imaging》pdf中的一段代码。这篇pdf可以从这里下到 http://dlc.sun.com/pdf/806-5413-10/806-5413-10.pdf

 

 

 

import java.awt.Frame;
import java.awt.image.renderable.ParameterBlock;
import java.io.IOException;

import javax.media.jai.Interpolation;
import javax.media.jai.JAI;
import javax.media.jai.RenderedOp;
import javax.media.jai.widget.ScrollingImagePanel;
import com.sun.media.jai.codec.FileSeekableStream;

public class JAISampleProgram {

 /**
  * @param args
  */
 public static void main(String[] args) {
  if(args.length!=1){
   System.out.println("Usage: java JAISampleProgram input image_filename");
   System.exit(-1);
  }
  
  FileSeekableStream stream = null;
  try {
   stream = new FileSeekableStream(args[0]);
  } catch (IOException e) {
   e.printStackTrace();
   System.exit(0);
  }
  
  RenderedOp image1=JAI.create("stream", stream);
  Interpolation interp = Interpolation.getInstance(Interpolation.INTERP_BILINEAR);
  
  ParameterBlock params = new ParameterBlock();
  params.addSource(image1);
  params.add(2.0F);
  params.add(2.0F);
  params.add(0.0F);
  params.add(0.0F);
  params.add(interp);
  
  RenderedOp image2 = JAI.create("scale", params);
  
  int width = image2.getWidth();
  int height = image2.getHeight();
  
  ScrollingImagePanel panel = new ScrollingImagePanel(image2,width,height);
  
  Frame window = new Frame("JAI Sample Program");
  window.add(panel);
  window.pack();
  window.show();

 }

}

确实面向对象的封装比较好。

 

贴出来分享一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值