![]() |
Qt 6.x
The Qt SDK
|
#include <qbmphandler_p.h>
Public Types | |
enum | InternalFormat { DibFormat , BmpFormat } |
![]() | |
enum | ImageOption { Size , ClipRect , Description , ScaledClipRect , ScaledSize , CompressionRatio , Gamma , Quality , Name , SubType , IncrementalReading , Endianness , Animation , BackgroundColor , ImageFormat , SupportedSubTypes , OptimizedWrite , ProgressiveScanWrite , ImageTransformation } |
This enum describes the different options supported by QImageIOHandler. More... | |
enum | Transformation { TransformationNone = 0 , TransformationMirror = 1 , TransformationFlip = 2 , TransformationRotate180 = TransformationMirror | TransformationFlip , TransformationRotate90 = 4 , TransformationMirrorAndRotate90 = TransformationMirror | TransformationRotate90 , TransformationFlipAndRotate90 = TransformationFlip | TransformationRotate90 , TransformationRotate270 = TransformationRotate180 | TransformationRotate90 } |
Public Member Functions | |
QBmpHandler (InternalFormat fmt=BmpFormat) | |
bool | canRead () const override |
Returns true if an image can be read from the device (i.e., the image format is supported, the device can be read from and the initial header information suggests that the image can be read); otherwise returns false . | |
bool | read (QImage *image) override |
Read an image from the device, and stores it in image. | |
bool | write (const QImage &image) override |
Writes the image image to the assigned device. | |
QVariant | option (ImageOption option) const override |
Returns the value assigned to option as a QVariant. | |
void | setOption (ImageOption option, const QVariant &value) override |
Sets the option option with the value value. | |
bool | supportsOption (ImageOption option) const override |
Returns true if the QImageIOHandler supports the option option; otherwise returns false . | |
![]() | |
QImageIOHandler () | |
Constructs a QImageIOHandler object. | |
virtual | ~QImageIOHandler () |
Destructs the QImageIOHandler object. | |
void | setDevice (QIODevice *device) |
Sets the device of the QImageIOHandler to device. | |
QIODevice * | device () const |
Returns the device currently assigned to the QImageIOHandler. | |
void | setFormat (const QByteArray &format) |
Sets the format of the QImageIOHandler to format. | |
void | setFormat (const QByteArray &format) const |
Sets the format of the QImageIOHandler to format. | |
QByteArray | format () const |
Returns the format that is currently assigned to QImageIOHandler. | |
virtual bool | canRead () const =0 |
Returns true if an image can be read from the device (i.e., the image format is supported, the device can be read from and the initial header information suggests that the image can be read); otherwise returns false . | |
virtual bool | read (QImage *image)=0 |
Read an image from the device, and stores it in image. | |
virtual bool | write (const QImage &image) |
Writes the image image to the assigned device. | |
virtual QVariant | option (ImageOption option) const |
Returns the value assigned to option as a QVariant. | |
virtual void | setOption (ImageOption option, const QVariant &value) |
Sets the option option with the value value. | |
virtual bool | supportsOption (ImageOption option) const |
Returns true if the QImageIOHandler supports the option option; otherwise returns false . | |
virtual bool | jumpToNextImage () |
For image formats that support animation, this function jumps to the next image. | |
virtual bool | jumpToImage (int imageNumber) |
For image formats that support animation, this function jumps to the image whose sequence number is imageNumber. | |
virtual int | loopCount () const |
For image formats that support animation, this function returns the number of times the animation should loop. | |
virtual int | imageCount () const |
For image formats that support animation, this function returns the number of images in the animation. | |
virtual int | nextImageDelay () const |
For image formats that support animation, this function returns the number of milliseconds to wait until reading the next image. | |
virtual int | currentImageNumber () const |
For image formats that support animation, this function returns the sequence number of the current image in the animation. | |
virtual QRect | currentImageRect () const |
Returns the rect of the current image. | |
Static Public Member Functions | |
static bool | canRead (QIODevice *device) |
![]() | |
static bool | allocateImage (QSize size, QImage::Format format, QImage *image) |
Additional Inherited Members | |
![]() | |
QImageIOHandler (QImageIOHandlerPrivate &dd) | |
![]() | |
QScopedPointer< QImageIOHandlerPrivate > | d_ptr |
Definition at line 67 of file qbmphandler_p.h.
Enumerator | |
---|---|
DibFormat | |
BmpFormat |
Definition at line 70 of file qbmphandler_p.h.
|
explicit |
Definition at line 671 of file qbmphandler.cpp.
|
overridevirtual |
Returns true
if an image can be read from the device (i.e., the image format is supported, the device can be read from and the initial header information suggests that the image can be read); otherwise returns false
.
When reimplementing canRead(), make sure that the I/O device (device()) is left in its original state (e.g., by using peek() rather than read()).
Implements QImageIOHandler.
Definition at line 704 of file qbmphandler.cpp.
References BmpFormat, canRead(), QImageIOHandler::device(), and QImageIOHandler::setFormat().
Referenced by canRead(), and createReadHandlerHelper().
|
static |
Definition at line 717 of file qbmphandler.cpp.
References QImageIOHandler::device(), QIODevice::peek(), qstrncmp(), and qWarning.
|
overridevirtual |
Returns the value assigned to option as a QVariant.
The type of the value depends on the option. For example, option(Size) returns a QSize variant.
Reimplemented from QImageIOHandler.
Definition at line 864 of file qbmphandler.cpp.
References BMP_INFOHDR::biAlphaMask, BMP_INFOHDR::biBitCount, BMP_INFOHDR::biCompression, BMP_INFOHDR::biHeight, BMP_INFOHDR::biSize, BMP_INFOHDR::biWidth, BMP_ALPHABITFIELDS, BMP_BITFIELDS, BMP_WIN4, QImageIOHandler::format(), QImage::Format_ARGB32, QImage::Format_Indexed8, QImage::Format_Mono, QImage::Format_RGB32, QImageIOHandler::ImageFormat, and QImageIOHandler::Size.
|
overridevirtual |
Read an image from the device, and stores it in image.
Returns true
if the image is successfully read; otherwise returns false.
For image formats that support incremental loading, and for animation formats, the image handler can assume that image points to the previous frame.
Implements QImageIOHandler.
Definition at line 731 of file qbmphandler.cpp.
References BMP_FILEHDR::bfOffBits, BMP_INFOHDR::biBitCount, BMP_INFOHDR::biCompression, BMP_INFOHDR::biSize, BMP_INFOHDR::biSizeImage, BMP_ALPHABITFIELDS, BMP_BITFIELDS, BMP_FILEHDR_SIZE, BmpFormat, d, QImageIOHandler::device(), QDataStream::LittleEndian, qWarning, and read_dib_body().
|
overridevirtual |
Sets the option option with the value value.
Reimplemented from QImageIOHandler.
Definition at line 899 of file qbmphandler.cpp.
References Q_UNUSED.
|
overridevirtual |
Returns true
if the QImageIOHandler supports the option option; otherwise returns false
.
For example, if the QImageIOHandler supports the \l Size option, supportsOption(Size) must return true.
Reimplemented from QImageIOHandler.
Definition at line 858 of file qbmphandler.cpp.
References QImageIOHandler::ImageFormat, and QImageIOHandler::Size.
|
overridevirtual |
Writes the image image to the assigned device.
Returns true
on success; otherwise returns false
.
The default implementation does nothing, and simply returns false
.
Reimplemented from QImageIOHandler.
Definition at line 786 of file qbmphandler.cpp.
References BMP_FILEHDR::bfOffBits, BMP_FILEHDR::bfReserved1, BMP_FILEHDR::bfReserved2, BMP_FILEHDR::bfSize, BMP_FILEHDR::bfType, BMP_FILEHDR_SIZE, BMP_WIN, d, QImageIOHandler::device(), DibFormat, QImage::Format_Alpha8, QImage::Format_ARGB32, QImage::Format_Grayscale8, QImage::Format_Indexed8, QImage::Format_Mono, QImage::Format_MonoLSB, QImage::Format_RGB32, QDataStream::LittleEndian, qt_write_dib(), and QDataStream::setByteOrder().