如何在Java中将TIF转换为PNG?

在Java下,将TIF文件转换为PNG的最佳方法是什么?

简单是可取的,但如果最简单的方法是使用第三方库,那么我会考虑这个解决方案。

首先,安装JAI 。 然后安装JAI / ImageIO 。 然后做

public static void main(final String[] args) throws Exception { final BufferedImage tif = ImageIO.read(new File("test.tif")); ImageIO.write(tif, "png", new File("test.png")); } 

使用像im4java这样的imageMagic java库,它们的性能和质量要比JAI好得多

例如:

 import org.im4java.core.ConvertCmd; import org.im4java.core.IMOperation; public static void convertTifToPng(File inputImage, File outputImage){ IMOperation op = new IMOperation(); op.addImage(); //place holder for input file op.addImage(); //place holder for output file ConvertCmd convert = new ConvertCmd(); convert.run(op, new Object[]{inputImage.getAbsolutePath(), outputImage.getAbsolutePath()}); } 

im4java的maven依赖是

  im4java im4java 0.98.0  

Java高级成像APi是一个很好的图像处理库

http://java.sun.com/products/java-media/jai/iio.html

下载JIMI软件开发工具包jimi1_0.zip并将JimiProClasses.zip设置为您的类路径

http://sofzh.miximages.com/java/java-archive-downloads-java-client-419417.html“); System.out.println(“Saving ” + fileObj.getCanonicalPath()); ParameterBlock parBlock = new ParameterBlock(); parBlock.addSource(page); parBlock.add(fileObj.toString()); parBlock.add(“png”); RenderedOp renderedOp = JAI.create(“filestore”,parBlock); renderedOp.dispose(); } return image; } }