我有一个来自扫描仪的 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 放在“filestore”操作中)