1997-12-17 14:01:52 +00:00
|
|
|
\section{Standard Module \sectcode{imghdr}}
|
1997-07-17 16:34:52 +00:00
|
|
|
\label{module-imghdr}
|
1996-08-19 22:58:03 +00:00
|
|
|
\stmodindex{imghdr}
|
|
|
|
|
|
|
|
The \code{imghdr} module determines the type of image contained in a
|
|
|
|
file or byte stream.
|
|
|
|
|
|
|
|
The \code{imghdr} module defines the following function:
|
|
|
|
|
1998-02-13 06:58:54 +00:00
|
|
|
\setindexsubitem{(in module imghdr)}
|
1996-08-19 22:58:03 +00:00
|
|
|
|
|
|
|
\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 \code{what}:
|
|
|
|
|
|
|
|
\begin{enumerate}
|
|
|
|
\item[``rgb''] SGI ImgLib Files
|
|
|
|
|
|
|
|
\item[``gif''] GIF 87a and 89a Files
|
|
|
|
|
|
|
|
\item[``pbm''] Portable Bitmap Files
|
|
|
|
|
|
|
|
\item[``pgm''] Portable Graymap Files
|
|
|
|
|
|
|
|
\item[``ppm''] Portable Pixmap Files
|
|
|
|
|
|
|
|
\item[``tiff''] TIFF Files
|
|
|
|
|
|
|
|
\item[``rast''] Sun Raster Files
|
|
|
|
|
|
|
|
\item[``xbm''] X Bitmap Files
|
|
|
|
|
|
|
|
\item[``jpeg''] JPEG data in JIFF format
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
You can extend the list of file types \code{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 \code{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:
|
|
|
|
|
1998-02-13 06:58:54 +00:00
|
|
|
\begin{verbatim}
|
1996-08-19 22:58:03 +00:00
|
|
|
>>> import imghdr
|
|
|
|
>>> imghdr.what('/tmp/bass.gif')
|
|
|
|
'gif'
|
1998-02-13 06:58:54 +00:00
|
|
|
\end{verbatim}
|