Qt Reference Documentation

Qt 3 Support Members for QPixmap

The following class members are part of the Qt 3 support layer. They are provided to help you port old code to Qt 4. We advise against using them in new code.

Public Types

enum ColorMode { Auto, Color, Mono }

Public Functions

QPixmap ( const QString & fileName, const char * format, ColorMode mode )
QPixmap ( const QImage & image )
QPixmap alphaChannel () const
bool convertFromImage ( const QImage & image, ColorMode mode )
QImage convertToImage () const
bool load ( const QString & fileName, const char * format, ColorMode mode )
bool loadFromData ( const uchar * buf, uint len, const char * format, ColorMode mode )
void resize ( int width, int height )
void resize ( const QSize & size )
bool selfMask () const
int serialNumber () const
void setAlphaChannel ( const QPixmap & alphaChannel )
QPixmap xForm ( const QMatrix & matrix ) const
operator QImage () const
QPixmap & operator= ( const QImage & image )

Member Type Documentation

enum QPixmap::ColorMode

This enum type defines the color modes that exist for converting QImage objects to QPixmap. It is provided here for compatibility with earlier versions of Qt.

Use Qt::ImageConversionFlags instead.

ConstantValueDescription
QPixmap::Auto0Select Color or Mono on a case-by-case basis.
QPixmap::Color1Always create colored pixmaps.
QPixmap::Mono2Always create bitmaps.

Member Function Documentation

QPixmap::QPixmap ( const QString & fileName, const char * format, ColorMode mode )

Use the constructor that takes a Qt::ImageConversionFlag instead.

QPixmap::QPixmap ( const QImage & image )

Constructs a pixmap from the QImage image.

Use the static fromImage() function instead.

QPixmap QPixmap::alphaChannel () const

Returns the alpha channel of the pixmap as a new grayscale QPixmap in which each pixel's red, green, and blue values are given the alpha value of the original pixmap. The color depth of the returned pixmap is the system depth on X11 and 8-bit on Windows and Mac OS X.

You can use this function while debugging to get a visible image of the alpha channel. If the pixmap doesn't have an alpha channel, i.e., the alpha channel's value for all pixels equals 0xff), a null pixmap is returned. You can check this with the isNull() function.

We show an example:

         pixmap = QPixmap(100, 100);
         pixmap.fill(Qt::transparent);

         QRadialGradient gradient(50, 50, 50, 50, 50);
         gradient.setColorAt(0, QColor::fromRgbF(1, 0, 0, 1));
         gradient.setColorAt(1, QColor::fromRgbF(0, 0, 0, 0));
         QPainter painter(&pixmap);
         painter.fillRect(0, 0, 100, 100, gradient);

         channelImage = pixmap.alphaChannel();
         update();

The pixmap and channelImage QPixmaps

Warning: This is an expensive operation. The alpha channel of the pixmap is extracted dynamically from the pixeldata. Most usecases of this function are covered by QPainter and compositionModes which will normally execute faster.

See also setAlphaChannel() and Pixmap Information.

bool QPixmap::convertFromImage ( const QImage & image, ColorMode mode )

Use the static fromImage() function instead.

QImage QPixmap::convertToImage () const

Use the toImage() function instead.

bool QPixmap::load ( const QString & fileName, const char * format, ColorMode mode )

Use the load() function that takes a Qt::ImageConversionFlag instead.

bool QPixmap::loadFromData ( const uchar * buf, uint len, const char * format, ColorMode mode )

Use the loadFromData() function that takes a Qt::ImageConversionFlag instead.

void QPixmap::resize ( int width, int height )

Use QPixmap::copy() instead to get the pixmap with the new size.

For example, if you have code like

 pixmap.resize(10, 20);

you can rewrite it as

 pixmap = pixmap.copy(0, 0, 10, 20);

void QPixmap::resize ( const QSize & size )

This is an overloaded function.

Use QPixmap::copy() instead to get the pixmap with the new size.

For example, if you have code like

 pixmap.resize(size);

you can rewrite it as

 pixmap = pixmap.copy(QRect(QPoint(0, 0), size));

bool QPixmap::selfMask () const

Returns whether the pixmap is its own mask or not.

This function is no longer relevant since the concept of self masking doesn't exists anymore.

int QPixmap::serialNumber () const

Returns a number that identifies the contents of this QPixmap object. Distinct QPixmap objects can only have the same serial number if they refer to the same contents (but they don't have to).

Use cacheKey() instead.

Warning: The serial number doesn't necessarily change when the pixmap is altered. This means that it may be dangerous to use it as a cache key. For caching pixmaps, we recommend using the QPixmapCache class whenever possible.

void QPixmap::setAlphaChannel ( const QPixmap & alphaChannel )

Sets the alpha channel of this pixmap to the given alphaChannel by converting the alphaChannel into 32 bit and using the intensity of the RGB pixel values.

The effect of this function is undefined when the pixmap is being painted on.

Warning: This is potentially an expensive operation. Most usecases for this function are covered by QPainter and compositionModes which will normally execute faster.

See also alphaChannel() and Pixmap Transformations.

QPixmap QPixmap::xForm ( const QMatrix & matrix ) const

Use transformed() instead.

QPixmap::operator QImage () const

Returns the pixmap as a QImage.

Use the toImage() function instead.

QPixmap & QPixmap::operator= ( const QImage & image )

This is an overloaded function.

Converts the given image to a pixmap that is assigned to this pixmap.

Use the static fromImage() function instead.