原文地址:Java操作tif文件
参考资料: 使用IIOImage对象写出一个多页图片
最近一段时间,公司需要对原来的tif文档做合并处理,也有的是之前的拆分程序出问题,需要重新拆分;
从网上找了一天的资料,终于把问题解决了;
上面的链接中的代码有部分地方需要修改:
拆分一个多页的tiff为单个tif:
/**
* 从一个分页的tiff文件中拆分各页,并从0开始命名每一页
* @param fTiff 源tiff文件
* @param decDir
* tiff目标路径,目标文件将会以0001.tif,0002.tif...置于此路径下
* @return true表示成功,false表示失败
*/
public static boolean makeSingleTif(File fTiff, File decDir) {
boolean bres = true;
FileImageInputStream fis = null;
try {
//java1.8的ImageIO不支持原文中以"TIFF"名字获取ImageReader,具体原因是
//ImageReaderSpi中有一个注册器,会先在内存中注册各个名称的读取器,而这个注册器恰好没有TIFF格式的
//所以需要jai-imageio-1.1.jar提供TIFFImageReader;
TIFFImageReaderSpi tiffImageReaderSpi = new TIFFImageRea