Skip to content

Commit

Permalink
Merge 7c6ede3 into 06895b6
Browse files Browse the repository at this point in the history
  • Loading branch information
radarhere committed Nov 26, 2016
2 parents 06895b6 + 7c6ede3 commit 83d2fe8
Show file tree
Hide file tree
Showing 14 changed files with 38 additions and 33 deletions.
3 changes: 1 addition & 2 deletions PIL/EpsImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -423,7 +423,6 @@ def close(self):

Image.register_save(EpsImageFile.format, _save)

Image.register_extension(EpsImageFile.format, ".ps")
Image.register_extension(EpsImageFile.format, ".eps")
Image.register_extensions(EpsImageFile.format, [".ps", ".eps"])

Image.register_mime(EpsImageFile.format, "application/postscript")
3 changes: 1 addition & 2 deletions PIL/FitsStubImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,5 +72,4 @@ def _save(im, fp, filename):
Image.register_open(FITSStubImageFile.format, FITSStubImageFile, _accept)
Image.register_save(FITSStubImageFile.format, _save)

Image.register_extension(FITSStubImageFile.format, ".fit")
Image.register_extension(FITSStubImageFile.format, ".fits")
Image.register_extensions(FITSStubImageFile.format, [".fit", ".fits"])
3 changes: 1 addition & 2 deletions PIL/FliImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -184,5 +184,4 @@ def tell(self):

Image.register_open(FliImageFile.format, FliImageFile, _accept)

Image.register_extension(FliImageFile.format, ".fli")
Image.register_extension(FliImageFile.format, ".flc")
Image.register_extensions(FliImageFile.format, [".fli", ".flc"])
3 changes: 1 addition & 2 deletions PIL/FtexImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,5 +91,4 @@ def _validate(prefix):


Image.register_open(FtexImageFile.format, FtexImageFile, _validate)
Image.register_extension(FtexImageFile.format, ".ftc")
Image.register_extension(FtexImageFile.format, ".ftu")
Image.register_extensions(FtexImageFile.format, [".ftc", ".ftu"])
3 changes: 1 addition & 2 deletions PIL/Hdf5StubImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,5 +69,4 @@ def _save(im, fp, filename):
Image.register_open(HDF5StubImageFile.format, HDF5StubImageFile, _accept)
Image.register_save(HDF5StubImageFile.format, _save)

Image.register_extension(HDF5StubImageFile.format, ".h5")
Image.register_extension(HDF5StubImageFile.format, ".hdf")
Image.register_extensions(HDF5StubImageFile.format, [".h5", ".hdf"])
10 changes: 10 additions & 0 deletions PIL/Image.py
Original file line number Diff line number Diff line change
Expand Up @@ -2478,6 +2478,16 @@ def register_extension(id, extension):
"""
EXTENSION[extension.lower()] = id.upper()

def register_extensions(id, extensions):
"""
Registers image extensions. This function should not be
used in application code.
:param id: An image format identifier.
:param extensions: A list of extensions used for this format.
"""
for extension in extensions:
register_extension(id, extension)

# --------------------------------------------------------------------
# Simple display support. User code may override this.
Expand Down
7 changes: 1 addition & 6 deletions PIL/Jpeg2KImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -269,12 +269,7 @@ def _save(im, fp, filename):
Image.register_open(Jpeg2KImageFile.format, Jpeg2KImageFile, _accept)
Image.register_save(Jpeg2KImageFile.format, _save)

Image.register_extension(Jpeg2KImageFile.format, '.jp2')
Image.register_extension(Jpeg2KImageFile.format, '.j2k')
Image.register_extension(Jpeg2KImageFile.format, '.jpc')
Image.register_extension(Jpeg2KImageFile.format, '.jpf')
Image.register_extension(Jpeg2KImageFile.format, '.jpx')
Image.register_extension(Jpeg2KImageFile.format, '.j2c')
Image.register_extensions(Jpeg2KImageFile.format, [".jp2", ".j2k", ".jpc", ".jpf", ".jpx", ".j2c"])

Image.register_mime(Jpeg2KImageFile.format, 'image/jp2')
Image.register_mime(Jpeg2KImageFile.format, 'image/jpx')
5 changes: 1 addition & 4 deletions PIL/JpegImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -766,9 +766,6 @@ def jpeg_factory(fp=None, filename=None):
Image.register_open(JpegImageFile.format, jpeg_factory, _accept)
Image.register_save(JpegImageFile.format, _save)

Image.register_extension(JpegImageFile.format, ".jfif")
Image.register_extension(JpegImageFile.format, ".jpe")
Image.register_extension(JpegImageFile.format, ".jpg")
Image.register_extension(JpegImageFile.format, ".jpeg")
Image.register_extensions(JpegImageFile.format, [".jfif", ".jpe", ".jpg", ".jpeg"])

Image.register_mime(JpegImageFile.format, "image/jpeg")
3 changes: 1 addition & 2 deletions PIL/MpegImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ def _open(self):

Image.register_open(MpegImageFile.format, MpegImageFile)

Image.register_extension(MpegImageFile.format, ".mpg")
Image.register_extension(MpegImageFile.format, ".mpeg")
Image.register_extensions(MpegImageFile.format, [".mpg", ".mpeg"])

Image.register_mime(MpegImageFile.format, "video/mpeg")
4 changes: 1 addition & 3 deletions PIL/PpmImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,4 @@ def _save(im, fp, filename):
Image.register_open(PpmImageFile.format, PpmImageFile, _accept)
Image.register_save(PpmImageFile.format, _save)

Image.register_extension(PpmImageFile.format, ".pbm")
Image.register_extension(PpmImageFile.format, ".pgm")
Image.register_extension(PpmImageFile.format, ".ppm")
Image.register_extensions(PpmImageFile.format, [".pbm", ".pgm", ".ppm"])
5 changes: 1 addition & 4 deletions PIL/SgiImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,4 @@ def _open(self):

Image.register_open(SgiImageFile.format, SgiImageFile, _accept)

Image.register_extension(SgiImageFile.format, ".bw")
Image.register_extension(SgiImageFile.format, ".rgb")
Image.register_extension(SgiImageFile.format, ".rgba")
Image.register_extension(SgiImageFile.format, ".sgi")
Image.register_extensions(SgiImageFile.format, [".bw", ".rgb", ".rgba", ".sgi"])
3 changes: 1 addition & 2 deletions PIL/TiffImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -1759,7 +1759,6 @@ def _save_all(im, fp, filename):
Image.register_save(TiffImageFile.format, _save)
Image.register_save_all(TiffImageFile.format, _save_all)

Image.register_extension(TiffImageFile.format, ".tif")
Image.register_extension(TiffImageFile.format, ".tiff")
Image.register_extensions(TiffImageFile.format, [".tif", ".tiff"])

Image.register_mime(TiffImageFile.format, "image/tiff")
3 changes: 1 addition & 2 deletions PIL/WmfImagePlugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -169,5 +169,4 @@ def _save(im, fp, filename):
Image.register_open(WmfStubImageFile.format, WmfStubImageFile, _accept)
Image.register_save(WmfStubImageFile.format, _save)

Image.register_extension(WmfStubImageFile.format, ".wmf")
Image.register_extension(WmfStubImageFile.format, ".emf")
Image.register_extensions(WmfStubImageFile.format, [".wmf", ".emf"])
16 changes: 16 additions & 0 deletions Tests/test_image.py
Original file line number Diff line number Diff line change
Expand Up @@ -272,6 +272,22 @@ def test_storage_neg(self):
with self.assertRaises(ValueError):
Image.core.fill('RGB', (2,-2), (0,0,0))

def test_register_extensions(self):
test_format = "a"
exts = ["b", "c"]
for ext in exts:
Image.register_extension(test_format, ext)
ext_individual = Image.EXTENSION.copy()
for ext in exts:
del Image.EXTENSION[ext]

Image.register_extensions(test_format, exts)
ext_multiple = Image.EXTENSION.copy()
for ext in exts:
del Image.EXTENSION[ext]

self.assertEqual(ext_individual, ext_multiple)


if __name__ == '__main__':
unittest.main()

0 comments on commit 83d2fe8

Please sign in to comment.