我正在开发一个网站,允许用户上传图像。我希望能够接受BMP,GIF,JPEG和PNG(也许还有一两个像TIFF)格式。我正在使用Apache Commons FileUpload库来实现此目的。为了使所有图像以相同的格式结束,我想将所有图像格式转换为JPEG格式。将从各种格式上传的图像转换为JPEG
什么是最简单的方法来做到这一点将工作将所有上述图像格式?
我曾尝试:
- ImageIO.read(),这给了
javax.imageio.IIOException: Unexpected block type 0!
一些GIF文件和java.awt.color.CMMException: Invalid image format
为JPEG文件。 - JAI,它给了GIF文件一个巨大的错误跟踪。
编辑:关于JAI方法的信息:
堆栈跟踪:
Error: One factory fails for the operation "gif"
Occurs in: javax.media.jai.ThreadSafeOperationRegistry
接着数以百计跟踪的线。
代码:
public static void convertToJPG(String originalFile, String newFile) throws Exception {
RenderedImage image = JAI.create("fileload", originalFile);
JAI.create("filestore", image, newFile, "JPEG");
}
图片:
JAI可以处理GIF文件的解码,您可以共享一些GIF文件或向我们展示您的一些代码,并且至少可以显示错误跟踪的顶部? – 2011-02-02 02:41:31