原创
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
最近一段时间,公司需要对原来的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 TIFFImageReaderSpi(); TIFFImageReader tiffImageReader = new TIFFImageReader(tiffImageReaderSpi); fis = new FileImageInputStream(fTiff); tiffImageReader.setInput(fis); int numPages = tiffImageReader.getNumImages(true); for(int i=0; i