怎么把BufferedImage转成tiff格式的图片 求代码
为什么又要我自己答....
用到的包:pdfbox和开源icafe
File sourceFile = new File(emailSavePath + "//" + fileName);
PDDocument doc = PDDocument.load(sourceFile);
PDFRenderer renderer = new PDFRenderer(doc);
int pageCount = doc.getNumberOfPages();
BufferedImage[] images = new BufferedImage[pageCount];
for (int i = 0; i < pageCount; ++i) {
BufferedImage image = renderer.renderImageWithDPI(i, 150, ImageType.GRAY);
images[i] = image;
}
FileOutputStream fos = new FileOutputStream(emailSavePath + "\\" + targetFile);
RandomAccessOutputStream rout = new FileCacheRandomAccessOutputStream(fos);
ImageParam.ImageParamBuilder builder = ImageParam.getBuilder();
ImageParam[] param = new ImageParam[1];
TIFFOptions tiffOptions = new TIFFOptions();
tiffOptions.setTiffCompression(Compression.JPG);
tiffOptions.setJPEGQuality(60);
/*
* tiffOptions.setXResolution(200); tiffOptions.setYResolution(200);
*/
builder.imageOptions(tiffOptions);
builder.colorType(ImageColorType.GRAY_SCALE);
// builder.bitsPerPixel(1);
param[0] = builder.build();
TIFFTweaker.writeMultipageTIFF(rout, param, images);