QImageDecoder - Incremental image decoder for all supported image formats
QImageDecoder ( QImageConsumer * c )
const QImage & image ()
int decode ( const uchar * buffer, int length )
Static Public Members
const char * formatName ( const uchar * buffer, int length )
QImageFormatType * format ( const char * name )
QStrList inputFormats ()
void registerDecoderFactory ( QImageFormatType * f )
void unregisterDecoderFactory ( QImageFormatType * f )
The QImageDecoder class is an incremental image decoder for all supported image formats.
New formats are installed by creating objects of class QImageFormatType; the QMovie class
can be used for all installed incremental image formats. QImageDecoder is only useful for
creating new ways of feeding data to an QImageConsumer.
A QImageDecoder is a machine that decodes images. It takes encoded image data via its
decode() method and expresses its decoding by supplying information to a QImageConsumer.
It implements its decoding by using a QImageFormat created by one of the currently-
existing QImageFormatType factory objects.
QImageFormatType and QImageFormat are the classes that you might need to implement support
for additional image formats.
Qt supports GIF reading if it is configured that way during installation (see qgif.h). If
it is, we are required to state that" The Graphics Interchange Format(c) is the Copyright
property of CompuServe Incorporated. GIF(sm) is a Service Mark property of CompuServe
Warning: If you are in a country that recognizes software patents and in which Unisys
holds a patent on LZW compression and/or decompression and you want to use GIF, Unisys may
require you to license that technology. Such countries include Canada, Japan, the USA,
France, Germany, Italy and the UK.
GIF support may be removed completely in a future version of Qt. We recommend using the
MNG or PNG format.
See also Graphics Classes, Image Processing Classes, and Multimedia Classes.
MEMBER FUNCTION DOCUMENTATION
QImageDecoder::QImageDecoder ( QImageConsumer * c )
Constructs a QImageDecoder that will send change information to the QImageConsumer c.
Destroys a QImageDecoder. The image it built is destroyed. The decoder built by the
factory for the file format is destroyed. The consumer for which it decoded the image is
int QImageDecoder::decode ( const uchar * buffer, int length )
Call this function to decode some data into image changes. The data in buffer will be
decoded, sending change information to the QImageConsumer of this QImageDecoder until one
of the change functions of the consumer returns FALSE. The length of the data is given in
Returns the number of bytes consumed: 0 if consumption is complete, and -1 if decoding
fails due to invalid data.
QImageFormatType * QImageDecoder::format ( const char * name ) [static]
Returns a QImageFormatType by name. This might be used when the user needs to force data
to be interpreted as being in a certain format. name is one of the formats listed by
QImageDecoder::inputFormats(). Note that you will still need to supply decodable data to
result->decoderFor() before you can begin decoding the data.
const char * QImageDecoder::formatName ( const uchar * buffer, int length ) [static]
Call this function to find the name of the format of the given header. The returned string
is statically allocated. The function will look at the first length characters in the
Returns 0 if the format is not recognized.
const QImage & QImageDecoder::image ()
Returns the image currently being decoded.
QStrList QImageDecoder::inputFormats () [static]
Returns a sorted list of formats for which asynchronous loading is supported.
void QImageDecoder::registerDecoderFactory ( QImageFormatType * f ) [static]
Registers the new QImageFormatType f. This is not needed in application code because
factories call this themselves.
void QImageDecoder::unregisterDecoderFactory ( QImageFormatType * f ) [static]
Unregisters the QImageFormatType f. This is not needed in application code because
factories call this themselves.
Copyright 1992-2001 Trolltech AS, http://www.trolltech.com. See the license file included
in the distribution for a complete license statement.
Generated automatically from the source code.
If you find a bug in Qt, please report it as described in
http://doc.trolltech.com/bughowto.html. Good bug reports help us to help you. Thank you.
The definitive Qt documentation is provided in HTML format; it is located at
$QTDIR/doc/html and can be read using Qt Assistant or with a web browser. This man page is
provided as a convenience for those users who prefer man pages, although this format is
not officially supported by Trolltech.
If you find errors in this manual page, please report them to firstname.lastname@example.org.
Please include the name of the manual page (qimagedecoder.3qt) and the Qt version (3.1.1).
Trolltech AS 9 December 2002 QImageDecoder(3qt)