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("lena.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")

Parser

class PIL.ImageFile.Parser

Incremental image parser. This class implements the standard feed/close consumer interface.

close()

(Consumer) Close the stream.

Returns:An image object.
Raises:IOError – If the parser failed to parse the image file either because it cannot be identified or cannot be decoded.
feed(data)

(Consumer) Feed data to the parser.

Parameters:data – A string buffer.
Raises:IOError – If the parser failed to parse the image file.
reset()

(Consumer) Reset the parser. Note that you can only call this method immediately after you’ve created a parser; parser instances cannot be reused.