diff options
Diffstat (limited to 'Doc/library/imghdr.rst')
-rw-r--r-- | Doc/library/imghdr.rst | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/Doc/library/imghdr.rst b/Doc/library/imghdr.rst new file mode 100644 index 0000000..90a8304 --- /dev/null +++ b/Doc/library/imghdr.rst @@ -0,0 +1,71 @@ + +:mod:`imghdr` --- Determine the type of an image +================================================ + +.. module:: imghdr + :synopsis: Determine the type of image contained in a file or byte stream. + + +The :mod:`imghdr` module determines the type of image contained in a file or +byte stream. + +The :mod:`imghdr` module defines the following function: + + +.. function:: what(filename[, h]) + + Tests the image data contained in the file named by *filename*, and returns a + string describing the image type. If optional *h* is provided, the *filename* + is ignored and *h* is assumed to contain the byte stream to test. + +The following image types are recognized, as listed below with the return value +from :func:`what`: + ++------------+-----------------------------------+ +| Value | Image format | ++============+===================================+ +| ``'rgb'`` | SGI ImgLib Files | ++------------+-----------------------------------+ +| ``'gif'`` | GIF 87a and 89a Files | ++------------+-----------------------------------+ +| ``'pbm'`` | Portable Bitmap Files | ++------------+-----------------------------------+ +| ``'pgm'`` | Portable Graymap Files | ++------------+-----------------------------------+ +| ``'ppm'`` | Portable Pixmap Files | ++------------+-----------------------------------+ +| ``'tiff'`` | TIFF Files | ++------------+-----------------------------------+ +| ``'rast'`` | Sun Raster Files | ++------------+-----------------------------------+ +| ``'xbm'`` | X Bitmap Files | ++------------+-----------------------------------+ +| ``'jpeg'`` | JPEG data in JFIF or Exif formats | ++------------+-----------------------------------+ +| ``'bmp'`` | BMP files | ++------------+-----------------------------------+ +| ``'png'`` | Portable Network Graphics | ++------------+-----------------------------------+ + +.. versionadded:: 2.5 + Exif detection. + +You can extend the list of file types :mod:`imghdr` can recognize by appending +to this variable: + + +.. data:: tests + + A list of functions performing the individual tests. Each function takes two + arguments: the byte-stream and an open file-like object. When :func:`what` is + called with a byte-stream, the file-like object will be ``None``. + + The test function should return a string describing the image type if the test + succeeded, or ``None`` if it failed. + +Example:: + + >>> import imghdr + >>> imghdr.what('/tmp/bass.gif') + 'gif' + |