diff --git a/PIL/TiffImagePlugin.py b/PIL/TiffImagePlugin.py index 695a2034a..771b1a5a2 100644 --- a/PIL/TiffImagePlugin.py +++ b/PIL/TiffImagePlugin.py @@ -915,7 +915,7 @@ def _save(im, fp, filename): ifd = ImageFileDirectory(prefix) - compression = im.info.get('compression','raw') + compression = im.encoderinfo.get('compression',im.info.get('compression','raw')) libtiff = compression in ["tiff_ccitt", "group3", "group4", "tiff_jpeg", "tiff_adobe_deflate", "tiff_thunderscan", "tiff_deflate", diff --git a/Tests/test_file_libtiff.py b/Tests/test_file_libtiff.py index c68633780..19626c1da 100644 --- a/Tests/test_file_libtiff.py +++ b/Tests/test_file_libtiff.py @@ -92,6 +92,7 @@ def test_g4_write(): assert_equal(reread.size,(500,500)) _assert_noerr(reread) assert_image_equal(reread, rot) + assert_equal(reread.info['compression'], 'group4') assert_equal(reread.info['compression'], orig.info['compression']) @@ -107,6 +108,15 @@ def test_adobe_deflate_tiff(): assert_no_exception(lambda: im.load()) +def test_g3_compression(): + i = Image.open('Tests/images/lena_g4_500.tif') + out = tempfile("temp.tif") + i.save(out, compression='group3') + + reread = Image.open(out) + assert_equal(reread.info['compression'], 'group3') + assert_image_equal(reread, i) + def test_little_endian(): im = Image.open('Tests/images/12bit.deflate.tif') assert_equal(im.getpixel((0,0)), 480)