2011-09-14 1 views
3

ImageIOを使用してイメージファイルを読み込むと、BufferedImage(objetの操作なし)を別のファイルに書き込みます。元のファイルと比較してファイルが異なります。ImageIO writeは、元のイメージファイルとは異なるファイルサイズを生成します。

ImageIOはイメージファイルの完全な内容(Exifメタデータのようなメタデータも含む)を読み込みますか?

そして完全な内容を読んだら、ImageIOはメタデータを含む画像の内容を書き出しますか?

答えて

4

多くのファイル形式(たとえばjpegを含む)は、(同じ品質設定の場合でも)いくつかの異なる方法で正しく圧縮できます。圧縮解除は決定論的であるが、圧縮は非決定論的であってもよい。

イメージを圧縮する方法が一意でないということは、ファイルをロード/保存した後にImageIOがバイト相当の結果を生成することを期待できないことを意味します。

関連する問題