ImageFile
Module¶
The ImageFile
module provides support functions for the image open
and save functions.
In addition, it provides a Parser
class which can be used to decode
an image piece by piece (e.g. while receiving it over a network connection).
This class implements the same consumer interface as the standard sgmllib
and xmllib modules.
Example: Parse an image¶
from PIL import ImageFile
fp = open("hopper.pgm", "rb")
p = ImageFile.Parser()
while 1:
s = fp.read(1024)
if not s:
break
p.feed(s)
im = p.close()
im.save("copy.jpg")
Classes¶
-
class
PIL.ImageFile.
Parser
[source]¶ Incremental image parser. This class implements the standard feed/close consumer interface.
-
close
()[source]¶ (Consumer) Close the stream.
- Returns
An image object.
- Raises
OSError – If the parser failed to parse the image file either because it cannot be identified or cannot be decoded.
-
-
class
PIL.ImageFile.
PyCodec
[source]¶ -
-
init
(args)[source]¶ Override to perform codec specific initialization
- Parameters
args – Array of args items from the tile entry
- Returns
None
-
-
class
PIL.ImageFile.
PyDecoder
[source]¶ Bases:
PIL.ImageFile.PyCodec
Python implementation of a format decoder. Override this class and add the decoding logic in the
decode()
method.See Writing Your Own File Codec in Python
-
decode
(buffer)[source]¶ Override to perform the decoding process.
- Parameters
buffer – A bytes object with the data to be decoded.
- Returns
A tuple of
(bytes consumed, errcode)
. If finished with decoding return -1 for the bytes consumed. Err codes are fromImageFile.ERRORS
.
-
-
class
PIL.ImageFile.
PyEncoder
[source]¶ Bases:
PIL.ImageFile.PyCodec
Python implementation of a format encoder. Override this class and add the decoding logic in the
encode()
method.See Writing Your Own File Codec in Python
-
encode
(bufsize)[source]¶ Override to perform the encoding process.
- Parameters
bufsize – Buffer size.
- Returns
A tuple of
(bytes encoded, errcode, bytes)
. If finished with encoding return 1 for the error code. Err codes are fromImageFile.ERRORS
.
-
encode_to_file
(fh, bufsize)[source]¶ - Parameters
fh – File handle.
bufsize – Buffer size.
- Returns
If finished successfully, return 0. Otherwise, return an error code. Err codes are from
ImageFile.ERRORS
.
-
encode_to_pyfd
()[source]¶ If
pushes_fd
isTrue
, then this method will be used, andencode()
will only be called once.- Returns
A tuple of
(bytes consumed, errcode)
. Err codes are fromImageFile.ERRORS
.
-
-
class
PIL.ImageFile.
ImageFile
[source]¶ Bases:
PIL.Image.Image
Base class for image file format handlers.
-
tile
¶ A list of tile descriptors, or
None
-
-
class
PIL.ImageFile.
StubImageFile
[source]¶ Bases:
PIL.ImageFile.ImageFile
Base class for stub image loaders.
A stub loader is an image loader that can identify files of a certain format, but relies on external code to load the file.
Constants¶
-
PIL.ImageFile.
LOAD_TRUNCATED_IMAGES
= False¶ Whether or not to load truncated image files. User code may change this.
-
PIL.ImageFile.
ERRORS
¶ Dict of known error codes returned from
PyDecoder.decode()
,PyEncoder.encode()
PyEncoder.encode_to_pyfd()
andPyEncoder.encode_to_file()
.