Paint System
Qt's paint system enables painting on screen and print devices using the same API, and is primarily based on the QPainter, QPaintDevice, and QPaintEngine classes.
QPainter is used to perform drawing operations, QPaintDevice is an abstraction of a two-dimensional space that can be painted on using a QPainter, and QPaintEngine provides the interface that the painter uses to draw onto different types of devices. The QPaintEngine class is used internally by QPainter and QPaintDevice, and is hidden from application programmers unless they create their own device type.
The main benefit of this approach is that all painting follows the same painting pipeline making it easy to add support for new features and providing default implementations for unsupported ones.
Topics
- Classes for Painting
- Paint Devices and Backends
- Drawing and Filling
- Coordinate System
- Reading and Writing Image Files
Classes for Painting
These classes provide support for painting onto a paint device.
Monochrome (1-bit depth) pixmaps | |
Colors based on RGB, HSV or CMYK values | |
Transformation between color spaces | |
Maps device independent QColors to device dependent pixel values | |
Template class that represents a NxM transformation matrix with N columns and M rows | |
Abstract base class for QIcon renderers | |
Format independent interface for reading images from files or other devices | |
Format independent interface for writing images to files or other devices | |
Two-dimensional vector using integer precision | |
Two-dimensional vector using floating point precision | |
Defines the four margins of a rectangle | |
Defines the four margins of a rectangle | |
Represents a collection of page ranges | |
Represents a paint device that supports multiple pages | |
The base class of objects that can be painted on with QPainter | |
Defines how a QPainter should draw lines and outlines of shapes | |
Off-screen image representation that can be used as a paint device | |
Defines a point in the plane using integer precision | |
Defines a point in the plane using floating point precision | |
Defines a rectangle in the plane using integer precision | |
Defines a finite rectangle in the plane using floating point precision | |
Struct contains a 64-bit RGB color | |
Struct contains a four part RGBA floating-point color | |
Defines the size of a two-dimensional object using integer point precision | |
Defines the size of a two-dimensional object using floating point precision | |
Convenience class for drawing QStyle elements inside a widget | |
Represents a vector or vertex in 2D space |