mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-12-27 10:26:19 +03:00
create static method to transform a Jpeg into an Mpo
This is dirty "downcasting". It just works in this special case.
This commit is contained in:
parent
3a7e2e259a
commit
ac5dd15e16
|
@ -98,6 +98,22 @@ class MpoImageFile(JpegImagePlugin.JpegImageFile):
|
|||
finally:
|
||||
self.__fp = None
|
||||
|
||||
@staticmethod
|
||||
def adopt(jpeg_instance, mpheader=None):
|
||||
'''
|
||||
Transform the instance of JpegImageFile into
|
||||
instance of MpoImageFile.
|
||||
After the call, the JpegImageFile is extended
|
||||
to be an MpoImageFile.
|
||||
|
||||
This is essentially useful when opening a JPEG
|
||||
file that reveals itself as an MPO, to avoid
|
||||
double call to _open.
|
||||
'''
|
||||
jpeg_instance.__class__ = MpoImageFile
|
||||
jpeg_instance._after_jpeg_open(mpheader)
|
||||
return jpeg_instance
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# Registry stuff
|
||||
|
|
Loading…
Reference in New Issue
Block a user