栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在JAVA中将两个或多个tiff图像文件合并为一个多页tiff图像

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在JAVA中将两个或多个tiff图像文件合并为一个多页tiff图像

我希望您有计算机内存可以执行此操作。TIFF图像文件很大。

您是正确的,因为您需要使用 Java Advanced
Imaging(JAI)
API来执行此操作。

首先,您必须将TIFF图像转换为
java.awt.image.BufferedImage
。这是一些可能有效的代码。我尚未测试此代码。

BufferedImage image[] = new BufferedImage[numImages];for (int i = 0; i < numImages; i++) {    SeekableStream ss = new FileSeekableStream(input_dir + file[i]);    ImageDeprer deprer = ImageCodec.createImageDeprer("tiff", ss, null);    PlanarImage op = new NullOpImage(deprer.depreAsRenderedImage(0), null, null, OpImage.OP_IO_BOUND);    image[i] = op.getAsBufferedImage();}

然后,您将BufferedImage数组转换回多个TIFF图像。我也没有测试此代码。

TIFFEnpreParam params = new TIFFEnpreParam();OutputStream out = new FileOutputStream(output_dir + image_name + ".tif"); ImageEnprer enprer = ImageCodec.createImageEnprer("tiff", out, params);Vector vector = new Vector();   for (int i = 0; i < numImages; i++) {    vector.add(image[i]); }params.setExtraImages(vector.listIterator(1)); // this may need a check to avoid IndexOutOfBoundsException when vector is emptyenprer.enpre(image[0]); out.close();

祝好运。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/498035.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号