1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
\section{\module{imghdr} ---
Determine the type of an image}
\declaremodule{standard}{imghdr}
\modulesynopsis{Determine the type of image contained in a file or
byte stream.}
The \module{imghdr} module determines the type of image contained in a
file or byte stream.
The \module{imghdr} module defines the following function:
\begin{funcdesc}{what}{filename\optional{, h}}
Tests the image data contained in the file named by \var{filename},
and returns a string describing the image type. If optional \var{h}
is provided, the \var{filename} is ignored and \var{h} is assumed to
contain the byte stream to test.
\end{funcdesc}
The following image types are recognized, as listed below with the
return value from \function{what()}:
\begin{tableii}{l|l}{code}{Value}{Image format}
\lineii{'rgb'}{SGI ImgLib Files}
\lineii{'gif'}{GIF 87a and 89a Files}
\lineii{'pbm'}{Portable Bitmap Files}
\lineii{'pgm'}{Portable Graymap Files}
\lineii{'ppm'}{Portable Pixmap Files}
\lineii{'tiff'}{TIFF Files}
\lineii{'rast'}{Sun Raster Files}
\lineii{'xbm'}{X Bitmap Files}
\lineii{'jpeg'}{JPEG data in JFIF format}
\lineii{'bmp'}{BMP files}
\lineii{'png'}{Portable Network Graphics}
\end{tableii}
You can extend the list of file types \module{imghdr} can recognize by
appending to this variable:
\begin{datadesc}{tests}
A list of functions performing the individual tests. Each function
takes two arguments: the byte-stream and an open file-like object.
When \function{what()} is called with a byte-stream, the file-like
object will be \code{None}.
The test function should return a string describing the image type if
the test succeeded, or \code{None} if it failed.
\end{datadesc}
Example:
\begin{verbatim}
>>> import imghdr
>>> imghdr.what('/tmp/bass.gif')
'gif'
\end{verbatim}
|