我有一个来自扫描仪的awt图像(bw),我想将其保存在TIF文件中,我尝试过使用JAI,但是它的文档很差,所以我无法理解某些JAI.create参数。

提前谢谢。

最佳答案

您实际上并不需要使用JAI进行图像读/写操作。
javax.imageio.ImageIO做得很好。即编写TIFF的方法如下:

ImageIO.write(img, "TIFF", new File(fileName));


但是,如果您必须使用JAI,它将类似于:

//load image
PlanarImage myImageOp = JAI.create("FileLoad", srcImgFile);

//here do some stuff with image if needed, i.e. cropping:
//ParameterBlock pb = new ParameterBlock();
//pb.addSource(myImageOp);
//pb.add((float)x);
//pb.add((float)y);
//pb.add((float)width);
//pb.add((float)height);
//myImageOp = JAI.create("crop", pb, null);

//save image
String dstImgFile="myImage.tiff";
String dstFileType="TIFF";
JAI.create("filestore", myImageOp, dstImgFile, dstFileType);


(也可以将awt图像直接作为myImageOp放置在“文件存储”操作中)

10-07 23:33