ユーザーが画像をアップロードできるウェブサイトを開発しています。BMP、GIF、JPEG、PNG(およびTIFFのような他の1つまたは2つ)形式を受け入れられるようにしたいと思います。これを実現するために、ApacheCommonsFileUploadライブラリを使用しています。すべての画像が同じ形式になるように、すべての画像形式をJPEG形式に変換したいと思います。
上記のすべての画像形式で機能するこれを行う最も簡単な方法は何ですか?
私が試してみました:
- ImageIO.read()は
javax.imageio.IIOException: Unexpected block type 0!
、一部のGIFファイルとjava.awt.color.CMMException: Invalid image format
JPEGファイルを提供します。 - JAIは、GIFファイルに膨大なエラートレースを提供しました。
編集: JAIメソッドに関する情報:
スタックトレース:
エラー:1つのファクトリが操作「gif」で失敗します
発生場所: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");
}
画像: