QtBase  v6.3.1
Classes | Public Types | Public Member Functions | Friends | List of all members
QPainter Class Reference

The QPainter class performs low-level painting on widgets and other paint devices. More...

#include <qpainter.h>

Inheritance diagram for QPainter:
Inheritance graph
[legend]

Classes

class  PixmapFragment
 This class is used in conjunction with the QPainter::drawPixmapFragments() function to specify how a pixmap, or sub-rect of a pixmap, is drawn. More...
 

Public Types

enum  RenderHint {
  Antialiasing = 0x01 , TextAntialiasing = 0x02 , SmoothPixmapTransform = 0x04 , VerticalSubpixelPositioning = 0x08 ,
  LosslessImageRendering = 0x40
}
 
enum  PixmapFragmentHint { OpaqueHint = 0x01 }
 the x coordinate of center point in the target rectangle. More...
 
enum  CompositionMode {
  CompositionMode_SourceOver , CompositionMode_DestinationOver , CompositionMode_Clear , CompositionMode_Source ,
  CompositionMode_Destination , CompositionMode_SourceIn , CompositionMode_DestinationIn , CompositionMode_SourceOut ,
  CompositionMode_DestinationOut , CompositionMode_SourceAtop , CompositionMode_DestinationAtop , CompositionMode_Xor ,
  CompositionMode_Plus , CompositionMode_Multiply , CompositionMode_Screen , CompositionMode_Overlay ,
  CompositionMode_Darken , CompositionMode_Lighten , CompositionMode_ColorDodge , CompositionMode_ColorBurn ,
  CompositionMode_HardLight , CompositionMode_SoftLight , CompositionMode_Difference , CompositionMode_Exclusion ,
  RasterOp_SourceOrDestination , RasterOp_SourceAndDestination , RasterOp_SourceXorDestination , RasterOp_NotSourceAndNotDestination ,
  RasterOp_NotSourceOrNotDestination , RasterOp_NotSourceXorDestination , RasterOp_NotSource , RasterOp_NotSourceAndDestination ,
  RasterOp_SourceAndNotDestination , RasterOp_NotSourceOrDestination , RasterOp_SourceOrNotDestination , RasterOp_ClearDestination ,
  RasterOp_SetDestination , RasterOp_NotDestination
}
 

Public Member Functions

 QPainter ()
 
 QPainter (QPaintDevice *)
 
 ~QPainter ()
 
QPaintDevicedevice () const
 
bool begin (QPaintDevice *)
 
bool end ()
 
bool isActive () const
 
void setCompositionMode (CompositionMode mode)
 
CompositionMode compositionMode () const
 
const QFontfont () const
 
void setFont (const QFont &f)
 
QFontMetrics fontMetrics () const
 
QFontInfo fontInfo () const
 
void setPen (const QColor &color)
 
void setPen (const QPen &pen)
 
void setPen (Qt::PenStyle style)
 
const QPenpen () const
 
void setBrush (const QBrush &brush)
 
void setBrush (Qt::BrushStyle style)
 
const QBrushbrush () const
 
void setBackgroundMode (Qt::BGMode mode)
 
Qt::BGMode backgroundMode () const
 
QPoint brushOrigin () const
 
void setBrushOrigin (int x, int y)
 
void setBrushOrigin (const QPoint &)
 
void setBrushOrigin (const QPointF &)
 
void setBackground (const QBrush &bg)
 
const QBrushbackground () const
 
qreal opacity () const
 
void setOpacity (qreal opacity)
 
QRegion clipRegion () const
 
QPainterPath clipPath () const
 
void setClipRect (const QRectF &, Qt::ClipOperation op=Qt::ReplaceClip)
 
void setClipRect (const QRect &, Qt::ClipOperation op=Qt::ReplaceClip)
 
void setClipRect (int x, int y, int w, int h, Qt::ClipOperation op=Qt::ReplaceClip)
 
void setClipRegion (const QRegion &, Qt::ClipOperation op=Qt::ReplaceClip)
 
void setClipPath (const QPainterPath &path, Qt::ClipOperation op=Qt::ReplaceClip)
 
void setClipping (bool enable)
 
bool hasClipping () const
 
QRectF clipBoundingRect () const
 
void save ()
 
void restore ()
 
void setTransform (const QTransform &transform, bool combine=false)
 
const QTransformtransform () const
 
const QTransformdeviceTransform () const
 
void resetTransform ()
 
void setWorldTransform (const QTransform &matrix, bool combine=false)
 
const QTransformworldTransform () const
 
QTransform combinedTransform () const
 
void setWorldMatrixEnabled (bool enabled)
 
bool worldMatrixEnabled () const
 
void scale (qreal sx, qreal sy)
 
void shear (qreal sh, qreal sv)
 
void rotate (qreal a)
 
void translate (const QPointF &offset)
 
void translate (const QPoint &offset)
 
void translate (qreal dx, qreal dy)
 
QRect window () const
 
void setWindow (const QRect &window)
 
void setWindow (int x, int y, int w, int h)
 
QRect viewport () const
 
void setViewport (const QRect &viewport)
 
void setViewport (int x, int y, int w, int h)
 
void setViewTransformEnabled (bool enable)
 
bool viewTransformEnabled () const
 
void strokePath (const QPainterPath &path, const QPen &pen)
 
void fillPath (const QPainterPath &path, const QBrush &brush)
 
void drawPath (const QPainterPath &path)
 
void drawPoint (const QPointF &pt)
 
void drawPoint (const QPoint &p)
 
void drawPoint (int x, int y)
 
void drawPoints (const QPointF *points, int pointCount)
 
void drawPoints (const QPolygonF &points)
 
void drawPoints (const QPoint *points, int pointCount)
 
void drawPoints (const QPolygon &points)
 
void drawLine (const QLineF &line)
 
void drawLine (const QLine &line)
 
void drawLine (int x1, int y1, int x2, int y2)
 
void drawLine (const QPoint &p1, const QPoint &p2)
 
void drawLine (const QPointF &p1, const QPointF &p2)
 
void drawLines (const QLineF *lines, int lineCount)
 
void drawLines (const QList< QLineF > &lines)
 
void drawLines (const QPointF *pointPairs, int lineCount)
 
void drawLines (const QList< QPointF > &pointPairs)
 
void drawLines (const QLine *lines, int lineCount)
 
void drawLines (const QList< QLine > &lines)
 
void drawLines (const QPoint *pointPairs, int lineCount)
 
void drawLines (const QList< QPoint > &pointPairs)
 
void drawRect (const QRectF &rect)
 
void drawRect (int x1, int y1, int w, int h)
 
void drawRect (const QRect &rect)
 
void drawRects (const QRectF *rects, int rectCount)
 
void drawRects (const QList< QRectF > &rectangles)
 
void drawRects (const QRect *rects, int rectCount)
 
void drawRects (const QList< QRect > &rectangles)
 
void drawEllipse (const QRectF &r)
 
void drawEllipse (const QRect &r)
 
void drawEllipse (int x, int y, int w, int h)
 
void drawEllipse (const QPointF &center, qreal rx, qreal ry)
 
void drawEllipse (const QPoint &center, int rx, int ry)
 
void drawPolyline (const QPointF *points, int pointCount)
 
void drawPolyline (const QPolygonF &polyline)
 
void drawPolyline (const QPoint *points, int pointCount)
 
void drawPolyline (const QPolygon &polygon)
 
void drawPolygon (const QPointF *points, int pointCount, Qt::FillRule fillRule=Qt::OddEvenFill)
 
void drawPolygon (const QPolygonF &polygon, Qt::FillRule fillRule=Qt::OddEvenFill)
 
void drawPolygon (const QPoint *points, int pointCount, Qt::FillRule fillRule=Qt::OddEvenFill)
 
void drawPolygon (const QPolygon &polygon, Qt::FillRule fillRule=Qt::OddEvenFill)
 
void drawConvexPolygon (const QPointF *points, int pointCount)
 
void drawConvexPolygon (const QPolygonF &polygon)
 
void drawConvexPolygon (const QPoint *points, int pointCount)
 
void drawConvexPolygon (const QPolygon &polygon)
 
void drawArc (const QRectF &rect, int a, int alen)
 
void drawArc (const QRect &, int a, int alen)
 
void drawArc (int x, int y, int w, int h, int a, int alen)
 
void drawPie (const QRectF &rect, int a, int alen)
 
void drawPie (int x, int y, int w, int h, int a, int alen)
 
void drawPie (const QRect &, int a, int alen)
 
void drawChord (const QRectF &rect, int a, int alen)
 
void drawChord (int x, int y, int w, int h, int a, int alen)
 
void drawChord (const QRect &, int a, int alen)
 
void drawRoundedRect (const QRectF &rect, qreal xRadius, qreal yRadius, Qt::SizeMode mode=Qt::AbsoluteSize)
 
void drawRoundedRect (int x, int y, int w, int h, qreal xRadius, qreal yRadius, Qt::SizeMode mode=Qt::AbsoluteSize)
 
void drawRoundedRect (const QRect &rect, qreal xRadius, qreal yRadius, Qt::SizeMode mode=Qt::AbsoluteSize)
 
void drawTiledPixmap (const QRectF &rect, const QPixmap &pm, const QPointF &offset=QPointF())
 
void drawTiledPixmap (int x, int y, int w, int h, const QPixmap &, int sx=0, int sy=0)
 
void drawTiledPixmap (const QRect &, const QPixmap &, const QPoint &=QPoint())
 
void drawPicture (const QPointF &p, const QPicture &picture)
 
void drawPicture (int x, int y, const QPicture &picture)
 
void drawPicture (const QPoint &p, const QPicture &picture)
 
void drawPixmap (const QRectF &targetRect, const QPixmap &pixmap, const QRectF &sourceRect)
 
void drawPixmap (const QRect &targetRect, const QPixmap &pixmap, const QRect &sourceRect)
 
void drawPixmap (int x, int y, int w, int h, const QPixmap &pm, int sx, int sy, int sw, int sh)
 
void drawPixmap (int x, int y, const QPixmap &pm, int sx, int sy, int sw, int sh)
 
void drawPixmap (const QPointF &p, const QPixmap &pm, const QRectF &sr)
 
void drawPixmap (const QPoint &p, const QPixmap &pm, const QRect &sr)
 
void drawPixmap (const QPointF &p, const QPixmap &pm)
 
void drawPixmap (const QPoint &p, const QPixmap &pm)
 
void drawPixmap (int x, int y, const QPixmap &pm)
 
void drawPixmap (const QRect &r, const QPixmap &pm)
 
void drawPixmap (int x, int y, int w, int h, const QPixmap &pm)
 
void drawPixmapFragments (const PixmapFragment *fragments, int fragmentCount, const QPixmap &pixmap, PixmapFragmentHints hints=PixmapFragmentHints())
 
void drawImage (const QRectF &targetRect, const QImage &image, const QRectF &sourceRect, Qt::ImageConversionFlags flags=Qt::AutoColor)
 
void drawImage (const QRect &targetRect, const QImage &image, const QRect &sourceRect, Qt::ImageConversionFlags flags=Qt::AutoColor)
 
void drawImage (const QPointF &p, const QImage &image, const QRectF &sr, Qt::ImageConversionFlags flags=Qt::AutoColor)
 
void drawImage (const QPoint &p, const QImage &image, const QRect &sr, Qt::ImageConversionFlags flags=Qt::AutoColor)
 
void drawImage (const QRectF &r, const QImage &image)
 
void drawImage (const QRect &r, const QImage &image)
 
void drawImage (const QPointF &p, const QImage &image)
 
void drawImage (const QPoint &p, const QImage &image)
 
void drawImage (int x, int y, const QImage &image, int sx=0, int sy=0, int sw=-1, int sh=-1, Qt::ImageConversionFlags flags=Qt::AutoColor)
 
void setLayoutDirection (Qt::LayoutDirection direction)
 
Qt::LayoutDirection layoutDirection () const
 
void drawGlyphRun (const QPointF &position, const QGlyphRun &glyphRun)
 
void drawStaticText (const QPointF &topLeftPosition, const QStaticText &staticText)
 
void drawStaticText (const QPoint &topLeftPosition, const QStaticText &staticText)
 
void drawStaticText (int left, int top, const QStaticText &staticText)
 
void drawText (const QPointF &p, const QString &s)
 
void drawText (const QPoint &p, const QString &s)
 
void drawText (int x, int y, const QString &s)
 
void drawText (const QPointF &p, const QString &str, int tf, int justificationPadding)
 
void drawText (const QRectF &r, int flags, const QString &text, QRectF *br=nullptr)
 
void drawText (const QRect &r, int flags, const QString &text, QRect *br=nullptr)
 
void drawText (int x, int y, int w, int h, int flags, const QString &text, QRect *br=nullptr)
 
void drawText (const QRectF &r, const QString &text, const QTextOption &o=QTextOption())
 
QRectF boundingRect (const QRectF &rect, int flags, const QString &text)
 
QRect boundingRect (const QRect &rect, int flags, const QString &text)
 
QRect boundingRect (int x, int y, int w, int h, int flags, const QString &text)
 
QRectF boundingRect (const QRectF &rect, const QString &text, const QTextOption &o=QTextOption())
 
void drawTextItem (const QPointF &p, const QTextItem &ti)
 
void drawTextItem (int x, int y, const QTextItem &ti)
 
void drawTextItem (const QPoint &p, const QTextItem &ti)
 
void fillRect (const QRectF &, const QBrush &)
 
void fillRect (int x, int y, int w, int h, const QBrush &)
 
void fillRect (const QRect &, const QBrush &)
 
void fillRect (const QRectF &, const QColor &color)
 
void fillRect (int x, int y, int w, int h, const QColor &color)
 
void fillRect (const QRect &, const QColor &color)
 
void fillRect (int x, int y, int w, int h, Qt::GlobalColor c)
 
void fillRect (const QRect &r, Qt::GlobalColor c)
 
void fillRect (const QRectF &r, Qt::GlobalColor c)
 
void fillRect (int x, int y, int w, int h, Qt::BrushStyle style)
 
void fillRect (const QRect &r, Qt::BrushStyle style)
 
void fillRect (const QRectF &r, Qt::BrushStyle style)
 
void fillRect (int x, int y, int w, int h, QGradient::Preset preset)
 
void fillRect (const QRect &r, QGradient::Preset preset)
 
void fillRect (const QRectF &r, QGradient::Preset preset)
 
void eraseRect (const QRectF &)
 
void eraseRect (int x, int y, int w, int h)
 
void eraseRect (const QRect &)
 
void setRenderHint (RenderHint hint, bool on=true)
 
void setRenderHints (RenderHints hints, bool on=true)
 
RenderHints renderHints () const
 
bool testRenderHint (RenderHint hint) const
 
QPaintEnginepaintEngine () const
 
void beginNativePainting ()
 
void endNativePainting ()
 

Friends

class QWidget
 
class QFontEngine
 
class QFontEngineBox
 
class QFontEngineFT
 
class QFontEngineMac
 
class QFontEngineWin
 
class QPaintEngine
 
class QPaintEngineExPrivate
 
class QOpenGLPaintEngine
 
class QWin32PaintEngine
 
class QWin32PaintEnginePrivate
 
class QRasterPaintEngine
 
class QAlphaPaintEngine
 
class QPreviewPaintEngine
 
class QTextEngine
 

Detailed Description

The QPainter class performs low-level painting on widgets and other paint devices.

\inmodule QtGui

\reentrant

QPainter provides highly optimized functions to do most of the drawing GUI programs require. It can draw everything from simple lines to complex shapes like pies and chords. It can also draw aligned text and pixmaps. Normally, it draws in a "natural" coordinate system, but it can also do view and world transformation. QPainter can operate on any object that inherits the QPaintDevice class.

The common use of QPainter is inside a widget's paint event: Construct and customize (e.g. set the pen or the brush) the painter. Then draw. Remember to destroy the QPainter object after drawing. For example:

The core functionality of QPainter is drawing, but the class also provide several functions that allows you to customize QPainter's settings and its rendering quality, and others that enable clipping. In addition you can control how different shapes are merged together by specifying the painter's composition mode.

The isActive() function indicates whether the painter is active. A painter is activated by the begin() function and the constructor that takes a QPaintDevice argument. The end() function, and the destructor, deactivates it.

Together with the QPaintDevice and QPaintEngine classes, QPainter form the basis for Qt's paint system. QPainter is the class used to perform drawing operations. QPaintDevice represents a device that can be painted on using a QPainter. QPaintEngine provides the interface that the painter uses to draw onto different types of devices. If the painter is active, device() returns the paint device on which the painter paints, and paintEngine() returns the paint engine that the painter is currently operating on. For more information, see the \l {Paint System}.

Sometimes it is desirable to make someone else paint on an unusual QPaintDevice. QPainter supports a static function to do this, setRedirected().

Warning
When the paintdevice is a widget, QPainter can only be used inside a paintEvent() function or in a function called by paintEvent().

Definition at line 81 of file qpainter.h.

Member Enumeration Documentation

◆ CompositionMode

Defines the modes supported for digital image compositing. Composition modes are used to specify how the pixels in one image, the source, are merged with the pixel in another image, the destination.

Please note that the bitwise raster operation modes, denoted with a RasterOp prefix, are only natively supported in the X11 and raster paint engines. This means that the only way to utilize these modes on the Mac is via a QImage. The RasterOp denoted blend modes are not supported for pens and brushes with alpha components. Also, turning on the QPainter::Antialiasing render hint will effectively disable the RasterOp modes.

The most common type is SourceOver (often referred to as just alpha blending) where the source pixel is blended on top of the destination pixel in such a way that the alpha component of the source defines the translucency of the pixel.

Several composition modes require an alpha channel in the source or target images to have an effect. For optimal performance the image format \l {QImage::Format}{Format_ARGB32_Premultiplied} is preferred.

When a composition mode is set it applies to all painting operator, pens, brushes, gradients and pixmap/image drawing.

\value CompositionMode_SourceOver This is the default mode. The alpha of the source is used to blend the pixel on top of the destination.

\value CompositionMode_DestinationOver The alpha of the destination is used to blend it on top of the source pixels. This mode is the inverse of CompositionMode_SourceOver.

\value CompositionMode_Clear The pixels in the destination are cleared (set to fully transparent) independent of the source.

\value CompositionMode_Source The output is the source pixel. (This means a basic copy operation and is identical to SourceOver when the source pixel is opaque).

\value CompositionMode_Destination The output is the destination pixel. This means that the blending has no effect. This mode is the inverse of CompositionMode_Source.

\value CompositionMode_SourceIn The output is the source, where the alpha is reduced by that of the destination.

\value CompositionMode_DestinationIn The output is the destination, where the alpha is reduced by that of the source. This mode is the inverse of CompositionMode_SourceIn.

\value CompositionMode_SourceOut The output is the source, where the alpha is reduced by the inverse of destination.

\value CompositionMode_DestinationOut The output is the destination, where the alpha is reduced by the inverse of the source. This mode is the inverse of CompositionMode_SourceOut.

\value CompositionMode_SourceAtop The source pixel is blended on top of the destination, with the alpha of the source pixel reduced by the alpha of the destination pixel.

\value CompositionMode_DestinationAtop The destination pixel is blended on top of the source, with the alpha of the destination pixel is reduced by the alpha of the destination pixel. This mode is the inverse of CompositionMode_SourceAtop.

\value CompositionMode_Xor The source, whose alpha is reduced with the inverse of the destination alpha, is merged with the destination, whose alpha is reduced by the inverse of the source alpha. CompositionMode_Xor is not the same as the bitwise Xor.

\value CompositionMode_Plus Both the alpha and color of the source and destination pixels are added together.

\value CompositionMode_Multiply The output is the source color multiplied by the destination. Multiplying a color with white leaves the color unchanged, while multiplying a color with black produces black.

\value CompositionMode_Screen The source and destination colors are inverted and then multiplied. Screening a color with white produces white, whereas screening a color with black leaves the color unchanged.

\value CompositionMode_Overlay Multiplies or screens the colors depending on the destination color. The destination color is mixed with the source color to reflect the lightness or darkness of the destination.

\value CompositionMode_Darken The darker of the source and destination colors is selected.

\value CompositionMode_Lighten The lighter of the source and destination colors is selected.

\value CompositionMode_ColorDodge The destination color is brightened to reflect the source color. A black source color leaves the destination color unchanged.

\value CompositionMode_ColorBurn The destination color is darkened to reflect the source color. A white source color leaves the destination color unchanged.

\value CompositionMode_HardLight Multiplies or screens the colors depending on the source color. A light source color will lighten the destination color, whereas a dark source color will darken the destination color.

\value CompositionMode_SoftLight Darkens or lightens the colors depending on the source color. Similar to CompositionMode_HardLight.

\value CompositionMode_Difference Subtracts the darker of the colors from the lighter. Painting with white inverts the destination color, whereas painting with black leaves the destination color unchanged.

\value CompositionMode_Exclusion Similar to CompositionMode_Difference, but with a lower contrast. Painting with white inverts the destination color, whereas painting with black leaves the destination color unchanged.

\value RasterOp_SourceOrDestination Does a bitwise OR operation on the source and destination pixels (src OR dst).

\value RasterOp_SourceAndDestination Does a bitwise AND operation on the source and destination pixels (src AND dst).

\value RasterOp_SourceXorDestination Does a bitwise XOR operation on the source and destination pixels (src XOR dst).

\value RasterOp_NotSourceAndNotDestination Does a bitwise NOR operation on the source and destination pixels ((NOT src) AND (NOT dst)).

\value RasterOp_NotSourceOrNotDestination Does a bitwise NAND operation on the source and destination pixels ((NOT src) OR (NOT dst)).

\value RasterOp_NotSourceXorDestination Does a bitwise operation where the source pixels are inverted and then XOR'ed with the destination ((NOT src) XOR dst).

\value RasterOp_NotSource Does a bitwise operation where the source pixels are inverted (NOT src).

\value RasterOp_NotSourceAndDestination Does a bitwise operation where the source is inverted and then AND'ed with the destination ((NOT src) AND dst).

\value RasterOp_SourceAndNotDestination Does a bitwise operation where the source is AND'ed with the inverted destination pixels (src AND (NOT dst)).

\value RasterOp_NotSourceOrDestination Does a bitwise operation where the source is inverted and then OR'ed with the destination ((NOT src) OR dst).

\value RasterOp_ClearDestination The pixels in the destination are cleared (set to 0) independent of the source.

\value RasterOp_SetDestination The pixels in the destination are set (set to 1) independent of the source.

\value RasterOp_NotDestination Does a bitwise operation where the destination pixels are inverted (NOT dst).

\value RasterOp_SourceOrNotDestination Does a bitwise operation where the source is OR'ed with the inverted destination pixels (src OR (NOT dst)).

See also
compositionMode(), setCompositionMode(), {QPainter::Composition Modes}{Composition Modes}, {Image Composition Example}
Enumerator
CompositionMode_SourceOver 
CompositionMode_DestinationOver 
CompositionMode_Clear 
CompositionMode_Source 
CompositionMode_Destination 
CompositionMode_SourceIn 
CompositionMode_DestinationIn 
CompositionMode_SourceOut 
CompositionMode_DestinationOut 
CompositionMode_SourceAtop 
CompositionMode_DestinationAtop 
CompositionMode_Xor 
CompositionMode_Plus 
CompositionMode_Multiply 
CompositionMode_Screen 
CompositionMode_Overlay 
CompositionMode_Darken 
CompositionMode_Lighten 
CompositionMode_ColorDodge 
CompositionMode_ColorBurn 
CompositionMode_HardLight 
CompositionMode_SoftLight 
CompositionMode_Difference 
CompositionMode_Exclusion 
RasterOp_SourceOrDestination 
RasterOp_SourceAndDestination 
RasterOp_SourceXorDestination 
RasterOp_NotSourceAndNotDestination 
RasterOp_NotSourceOrNotDestination 
RasterOp_NotSourceXorDestination 
RasterOp_NotSource 
RasterOp_NotSourceAndDestination 
RasterOp_SourceAndNotDestination 
RasterOp_NotSourceOrDestination 
RasterOp_SourceOrNotDestination 
RasterOp_ClearDestination 
RasterOp_SetDestination 
RasterOp_NotDestination 

Definition at line 132 of file qpainter.h.

◆ PixmapFragmentHint

the x coordinate of center point in the target rectangle.

\variable QPainter::PixmapFragment::x

\variable QPainter::PixmapFragment::y

the y coordinate of the center point in the target rectangle.

\variable QPainter::PixmapFragment::sourceLeft

the left coordinate of the source rectangle.

\variable QPainter::PixmapFragment::sourceTop

the top coordinate of the source rectangle.

\variable QPainter::PixmapFragment::width

the width of the source rectangle and is used to calculate the width of the target rectangle.

\variable QPainter::PixmapFragment::height

the height of the source rectangle and is used to calculate the height of the target rectangle.

\variable QPainter::PixmapFragment::scaleX

the horizontal scale of the target rectangle.

\variable QPainter::PixmapFragment::scaleY

the vertical scale of the target rectangle.

\variable QPainter::PixmapFragment::rotation

the rotation of the target rectangle in degrees. The target rectangle is rotated after it has been scaled.

\variable QPainter::PixmapFragment::opacity

the opacity of the target rectangle, where 0.0 is fully transparent and 1.0 is fully opaque.

Since
4.7

\value OpaqueHint Indicates that the pixmap fragments to be drawn are opaque. Opaque fragments are potentially faster to draw.

See also
QPainter::drawPixmapFragments(), QPainter::PixmapFragment
Enumerator
OpaqueHint 

Definition at line 116 of file qpainter.h.

◆ RenderHint

Renderhints are used to specify flags to QPainter that may or may not be respected by any given engine.

\value Antialiasing Indicates that the engine should antialias edges of primitives if possible.

\value TextAntialiasing Indicates that the engine should antialias text if possible. To forcibly disable antialiasing for text, do not use this hint. Instead, set QFont::NoAntialias on your font's style strategy.

\value SmoothPixmapTransform Indicates that the engine should use a smooth pixmap transformation algorithm (such as bilinear) rather than nearest neighbor.

\value VerticalSubpixelPositioning Allow text to be positioned at fractions of pixels vertically as well as horizontally, if this is supported by the font engine. This is currently supported by Freetype on all platforms when the hinting preference is QFont::PreferNoHinting, and also on macOS. For most use cases this will not improve visual quality, but may increase memory consumption and some reduction in text rendering performance. Therefore, enabling this is not recommended unless the use case requires it. One such use case could be aligning glyphs with other visual primitives. This value was added in Qt 6.1.

\value LosslessImageRendering Use a lossless image rendering, whenever possible. Currently, this hint is only used when QPainter is employed to output a PDF file through QPrinter or QPdfWriter, where drawImage()/drawPixmap() calls will encode images using a lossless compression algorithm instead of lossy JPEG compression. This value was added in Qt 5.13.

See also
renderHints(), setRenderHint(), {QPainter::Rendering Quality}{Rendering Quality}, {Concentric Circles Example}
Enumerator
Antialiasing 
TextAntialiasing 
SmoothPixmapTransform 
VerticalSubpixelPositioning 
LosslessImageRendering 

Definition at line 87 of file qpainter.h.

Constructor & Destructor Documentation

◆ QPainter() [1/2]

QPainter::QPainter ( )

Constructs a painter.

See also
begin(), end()

Definition at line 1460 of file qpainter.cpp.

◆ QPainter() [2/2]

QPainter::QPainter ( QPaintDevice device)
explicit

Constructs a painter that begins painting the paint device immediately.

This constructor is convenient for short-lived painters, e.g. in a QWidget::paintEvent() and should be used only once. The constructor calls begin() for you and the QPainter destructor automatically calls end().

Here's an example using begin() and end():

The same example using this constructor:

Since the constructor cannot provide feedback when the initialization of the painter failed you should rather use begin() and end() to paint on external devices, e.g. printers.

See also
begin(), end()

Definition at line 1489 of file qpainter.cpp.

Here is the call graph for this function:

◆ ~QPainter()

QPainter::~QPainter ( )

Destroys the painter.

Definition at line 1503 of file qpainter.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ background()

const QBrush & QPainter::background ( ) const

Returns the current background brush.

See also
setBackground(), {QPainter::Settings}{Settings}

Definition at line 2413 of file qpainter.cpp.

Here is the caller graph for this function:

◆ backgroundMode()

Qt::BGMode QPainter::backgroundMode ( ) const

Returns the current background mode.

See also
setBackgroundMode(), {QPainter::Settings}{Settings}

Definition at line 3622 of file qpainter.cpp.

◆ begin()

bool QPainter::begin ( QPaintDevice device)

Begins painting the paint device and returns true if successful; otherwise returns false.

Notice that all painter settings (setPen(), setBrush() etc.) are reset to default values when begin() is called.

The errors that can occur are serious problems, such as these:

Note that most of the time, you can use one of the constructors instead of begin(), and that end() is automatically done at destruction.

Warning
A paint device can only be painted by one painter at a time.
Painting on a QImage with the format QImage::Format_Indexed8 is not supported.
See also
end(), QPainter()

Definition at line 1709 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ beginNativePainting()

void QPainter::beginNativePainting ( )
Since
4.6

Flushes the painting pipeline and prepares for the user issuing commands directly to the underlying graphics context. Must be followed by a call to endNativePainting().

Note that only the states the underlying paint engine changes will be reset to their respective default states. The states we reset may change from release to release. The following states are currently reset in the OpenGL 2 engine:

\list

  • blending is disabled
  • the depth, stencil and scissor tests are disabled
  • the active texture unit is reset to 0
  • the depth mask, depth function and the clear depth are reset to their default values
  • the stencil mask, stencil operation and stencil function are reset to their default values
  • the current color is reset to solid white \endlist

If, for example, the OpenGL polygon mode is changed by the user inside a beginNativePaint()/endNativePainting() block, it will not be reset to the default state by endNativePainting(). Here is an example that shows intermixing of painter commands and raw OpenGL commands:

See also
endNativePainting()

Definition at line 1967 of file qpainter.cpp.

Here is the caller graph for this function:

◆ boundingRect() [1/4]

QRect QPainter::boundingRect ( const QRect rectangle,
int  flags,
const QString text 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Returns the bounding rectangle of the text as it will appear when drawn inside the given rectangle with the specified flags using the currently set font().

Definition at line 6334 of file qpainter.cpp.

Here is the call graph for this function:

◆ boundingRect() [2/4]

QRectF QPainter::boundingRect ( const QRectF rectangle,
const QString text,
const QTextOption option = QTextOption() 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Instead of specifying flags as a bitwise OR of the Qt::AlignmentFlag and Qt::TextFlag, this overloaded function takes an option argument. The QTextOption class provides a description of general rich text properties.

See also
QTextOption

Definition at line 6367 of file qpainter.cpp.

Here is the call graph for this function:

◆ boundingRect() [3/4]

QRectF QPainter::boundingRect ( const QRectF rectangle,
int  flags,
const QString text 
)

Returns the bounding rectangle of the text as it will appear when drawn inside the given rectangle with the specified flags using the currently set font(); i.e the function tells you where the drawText() function will draw when given the same arguments.

If the text does not fit within the given rectangle using the specified flags, the function returns the required rectangle.

The flags argument is a bitwise OR of the following flags: \list

See also
drawText(), Qt::Alignment, Qt::TextFlag

Definition at line 6345 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ boundingRect() [4/4]

QRect QPainter::boundingRect ( int  x,
int  y,
int  w,
int  h,
int  flags,
const QString text 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Returns the bounding rectangle of the given text as it will appear when drawn inside the rectangle beginning at the point ({x}, {y}) with width w and height h.

Definition at line 878 of file qpainter.h.

Here is the call graph for this function:

◆ brush()

const QBrush & QPainter::brush ( ) const

Returns the painter's current brush.

See also
QPainter::setBrush(), {QPainter::Settings}{Settings}

Definition at line 3813 of file qpainter.cpp.

Here is the caller graph for this function:

◆ brushOrigin()

QPoint QPainter::brushOrigin ( ) const

Returns the currently set brush origin.

See also
setBrushOrigin(), {QPainter::Settings}{Settings}

Definition at line 2094 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clipBoundingRect()

QRectF QPainter::clipBoundingRect ( ) const

Returns the bounding rectangle of the current clip if there is a clip; otherwise returns an empty rectangle. Note that the clip region is given in logical coordinates.

The bounding rectangle is not guaranteed to be tight.

See also
setClipRect(), setClipPath(), setClipRegion()
Since
4.8

Definition at line 2661 of file qpainter.cpp.

◆ clipPath()

QPainterPath QPainter::clipPath ( ) const

Returns the current clip path in logical coordinates.

Warning
QPainter does not store the combined clip explicitly as this is handled by the underlying QPaintEngine, so the path is recreated on demand and transformed to the current logical coordinate system. This is potentially an expensive operation.
See also
setClipPath(), clipRegion(), setClipping()

Definition at line 2610 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clipRegion()

QRegion QPainter::clipRegion ( ) const

Returns the currently set clip region. Note that the clip region is given in logical coordinates.

Warning
QPainter does not store the combined clip explicitly as this is handled by the underlying QPaintEngine, so the path is recreated on demand and transformed to the current logical coordinate system. This is potentially an expensive operation.
See also
setClipRegion(), clipPath(), setClipping()

Definition at line 2493 of file qpainter.cpp.

Here is the caller graph for this function:

◆ combinedTransform()

QTransform QPainter::combinedTransform ( ) const

Returns the transformation matrix combining the current window/viewport and world transformation.

See also
setWorldTransform(), setWindow(), setViewport()

Definition at line 7984 of file qpainter.cpp.

Here is the caller graph for this function:

◆ compositionMode()

QPainter::CompositionMode QPainter::compositionMode ( ) const

Returns the current composition mode.

See also
CompositionMode, setCompositionMode()

Definition at line 2397 of file qpainter.cpp.

◆ device()

QPaintDevice * QPainter::device ( ) const

Returns the paint device on which this painter is currently painting, or \nullptr if the painter is not active.

See also
isActive()

Definition at line 1529 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ deviceTransform()

const QTransform & QPainter::deviceTransform ( ) const

Returns the matrix that transforms from logical coordinates to device coordinates of the platform dependent paint device.

This function is only needed when using platform painting commands on the platform dependent handle (Qt::HANDLE), and the platform does not do transformations nativly.

The QPaintEngine::PaintEngineFeature enum can be queried to determine whether the platform performs the transformations or not.

See also
worldTransform(), QPaintEngine::hasFeature(),

Definition at line 7894 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawArc() [1/3]

void QPainter::drawArc ( const QRect rectangle,
int  startAngle,
int  spanAngle 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the arc defined by the given rectangle, startAngle and spanAngle.

Definition at line 633 of file qpainter.h.

Here is the call graph for this function:

◆ drawArc() [2/3]

void QPainter::drawArc ( const QRectF rectangle,
int  startAngle,
int  spanAngle 
)

Draws the arc defined by the given rectangle, startAngle and spanAngle.

The startAngle and spanAngle must be specified in 1/16th of a degree, i.e. a full circle equals 5760 (16 * 360). Positive values for the angles mean counter-clockwise while negative values mean the clockwise direction. Zero degrees is at the 3 o'clock position.

\table 100% \row

  • \inlineimage qpainter-arc.png
  • \endtable
See also
drawPie(), drawChord(), {Coordinate System}

Definition at line 4113 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawArc() [3/3]

void QPainter::drawArc ( int  x,
int  y,
int  width,
int  height,
int  startAngle,
int  spanAngle 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the arc defined by the rectangle beginning at (x, y) with the specified width and height, and the given startAngle and spanAngle.

Definition at line 638 of file qpainter.h.

Here is the call graph for this function:

◆ drawChord() [1/3]

void QPainter::drawChord ( const QRect rectangle,
int  startAngle,
int  spanAngle 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the chord defined by the given rectangle, startAngle and spanAngle.

Definition at line 653 of file qpainter.h.

Here is the call graph for this function:

◆ drawChord() [2/3]

void QPainter::drawChord ( const QRectF rectangle,
int  startAngle,
int  spanAngle 
)

Draws the chord defined by the given rectangle, startAngle and spanAngle. The chord is filled with the current brush().

The startAngle and spanAngle must be specified in 1/16th of a degree, i.e. a full circle equals 5760 (16 * 360). Positive values for the angles mean counter-clockwise while negative values mean the clockwise direction. Zero degrees is at the 3 o'clock position.

\table 100% \row

  • \inlineimage qpainter-chord.png
  • \endtable
See also
drawArc(), drawPie(), {Coordinate System}

Definition at line 4244 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawChord() [3/3]

void QPainter::drawChord ( int  x,
int  y,
int  width,
int  height,
int  startAngle,
int  spanAngle 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the chord defined by the rectangle beginning at (x, y) with the specified width and height, and the given startAngle and spanAngle.

Definition at line 658 of file qpainter.h.

Here is the call graph for this function:

◆ drawConvexPolygon() [1/4]

void QPainter::drawConvexPolygon ( const QPoint points,
int  pointCount 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the convex polygon defined by the first pointCount points in the array points using the current pen.

Definition at line 4713 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawConvexPolygon() [2/4]

void QPainter::drawConvexPolygon ( const QPointF points,
int  pointCount 
)

Draws the convex polygon defined by the first pointCount points in the array points using the current pen.

\table 100% \row

  • \inlineimage qpainter-polygon.png
  • \endtable

The first point is implicitly connected to the last point, and the polygon is filled with the current brush(). If the supplied polygon is not convex, i.e. it contains at least one angle larger than 180 degrees, the results are undefined.

On some platforms (e.g. X11), the drawConvexPolygon() function can be faster than the drawPolygon() function.

See also
drawPolygon(), drawPolyline(), {Coordinate System}

Definition at line 4747 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawConvexPolygon() [3/4]

void QPainter::drawConvexPolygon ( const QPolygon polygon)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the convex polygon defined by polygon using the current pen and brush.

Definition at line 549 of file qpainter.h.

Here is the call graph for this function:

◆ drawConvexPolygon() [4/4]

void QPainter::drawConvexPolygon ( const QPolygonF polygon)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the convex polygon defined by polygon using the current pen and brush.

Definition at line 544 of file qpainter.h.

Here is the call graph for this function:

◆ drawEllipse() [1/5]

void QPainter::drawEllipse ( const QPoint center,
int  rx,
int  ry 
)
inline
Since
4.4

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the ellipse positioned at {center} with radii {rx} and {ry}.

Definition at line 628 of file qpainter.h.

Here is the call graph for this function:

◆ drawEllipse() [2/5]

void QPainter::drawEllipse ( const QPointF center,
qreal  rx,
qreal  ry 
)
inline
Since
4.4

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the ellipse positioned at {center} with radii {rx} and {ry}.

Definition at line 623 of file qpainter.h.

Here is the call graph for this function:

◆ drawEllipse() [3/5]

void QPainter::drawEllipse ( const QRect rectangle)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the ellipse defined by the given rectangle.

Definition at line 4027 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawEllipse() [4/5]

void QPainter::drawEllipse ( const QRectF rectangle)

Draws the ellipse defined by the given rectangle.

A filled ellipse has a size of {rectangle}.\l {QRect::size()}{size()}. A stroked ellipse has a size of {rectangle}.\l {QRect::size()}{size()} plus the pen width.

\table 100% \row

  • \inlineimage qpainter-ellipse.png
  • \endtable
See also
drawPie(), {Coordinate System}

Definition at line 3986 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawEllipse() [5/5]

void QPainter::drawEllipse ( int  x,
int  y,
int  width,
int  height 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the ellipse defined by the rectangle beginning at ({x}, {y}) with the given width and height.

Definition at line 618 of file qpainter.h.

Here is the call graph for this function:

◆ drawGlyphRun()

void QPainter::drawGlyphRun ( const QPointF position,
const QGlyphRun glyphs 
)

Draws the glyphs represented by glyphs at position. The position gives the edge of the baseline for the string of glyphs. The glyphs will be retrieved from the font selected on glyphs and at offsets given by the positions in glyphs.

Since
4.8
See also
QGlyphRun::setRawFont(), QGlyphRun::setPositions(), QGlyphRun::setGlyphIndexes()

Definition at line 5300 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawImage() [1/9]

void QPainter::drawImage ( const QPoint point,
const QImage image 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given image at the given point.

Definition at line 834 of file qpainter.h.

Here is the call graph for this function:

◆ drawImage() [2/9]

void QPainter::drawImage ( const QPoint point,
const QImage image,
const QRect source,
Qt::ImageConversionFlags  flags = Qt::AutoColor 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the rectangular portion source of the given image with its origin at the given point.

Definition at line 817 of file qpainter.h.

Here is the call graph for this function:

◆ drawImage() [3/9]

void QPainter::drawImage ( const QPointF point,
const QImage image 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given image at the given point.

Definition at line 5120 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawImage() [4/9]

void QPainter::drawImage ( const QPointF point,
const QImage image,
const QRectF source,
Qt::ImageConversionFlags  flags = Qt::AutoColor 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the rectangular portion source of the given image with its origin at the given point.

Definition at line 811 of file qpainter.h.

Here is the call graph for this function:

◆ drawImage() [5/9]

void QPainter::drawImage ( const QRect rectangle,
const QImage image 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given image into the given rectangle.

Note
The image is scaled to fit the rectangle, if both the image and rectangle size disagree.

Definition at line 829 of file qpainter.h.

Here is the call graph for this function:

◆ drawImage() [6/9]

void QPainter::drawImage ( const QRect target,
const QImage image,
const QRect source,
Qt::ImageConversionFlags  flags = Qt::AutoColor 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the rectangular portion source of the given image into the target rectangle in the paint device.

Note
The image is scaled to fit the rectangle, if both the image and rectangle size disagree.

Definition at line 805 of file qpainter.h.

Here is the call graph for this function:

◆ drawImage() [7/9]

void QPainter::drawImage ( const QRectF rectangle,
const QImage image 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given image into the given rectangle.

Note
The image is scaled to fit the rectangle, if both the image and rectangle size disagree.

Definition at line 824 of file qpainter.h.

Here is the call graph for this function:

◆ drawImage() [8/9]

void QPainter::drawImage ( const QRectF target,
const QImage image,
const QRectF source,
Qt::ImageConversionFlags  flags = Qt::AutoColor 
)

Draws the rectangular portion source of the given image into the target rectangle in the paint device.

Note
The image is scaled to fit the rectangle, if both the image and rectangle size disagree.
See \l{Drawing High Resolution Versions of Pixmaps and Images} on how this is affected by QImage::devicePixelRatio().

If the image needs to be modified to fit in a lower-resolution result (e.g. converting from 32-bit to 8-bit), use the flags to specify how you would prefer this to happen.

\table 100% \row

  • \endtable
See also
drawPixmap(), QImage::devicePixelRatio()

Definition at line 5175 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawImage() [9/9]

void QPainter::drawImage ( int  x,
int  y,
const QImage image,
int  sx = 0,
int  sy = 0,
int  sw = -1,
int  sh = -1,
Qt::ImageConversionFlags  flags = Qt::AutoColor 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws an image at ({x}, {y}) by copying a part of image into the paint device.

({x}, {y}) specifies the top-left point in the paint device that is to be drawn onto. ({sx}, {sy}) specifies the top-left point in image that is to be drawn. The default is (0, 0).

({sw}, {sh}) specifies the size of the image that is to be drawn. The default, (0, 0) (and negative) means all the way to the bottom-right of the image.

Definition at line 839 of file qpainter.h.

Here is the call graph for this function:

◆ drawLine() [1/5]

void QPainter::drawLine ( const QLine line)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a line defined by line.

Definition at line 482 of file qpainter.h.

Here is the call graph for this function:

◆ drawLine() [2/5]

void QPainter::drawLine ( const QLineF line)
inline

Draws a line defined by line.

\table 100% \row

  • \inlineimage qpainter-line.png
  • \endtable
See also
drawLines(), drawPolyline(), {Coordinate System}

Definition at line 477 of file qpainter.h.

Here is the caller graph for this function:

◆ drawLine() [3/5]

void QPainter::drawLine ( const QPoint p1,
const QPoint p2 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a line from p1 to p2.

Definition at line 493 of file qpainter.h.

Here is the call graph for this function:

◆ drawLine() [4/5]

void QPainter::drawLine ( const QPointF p1,
const QPointF p2 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a line from p1 to p2.

Definition at line 499 of file qpainter.h.

Here is the call graph for this function:

◆ drawLine() [5/5]

void QPainter::drawLine ( int  x1,
int  y1,
int  x2,
int  y2 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a line from (x1, y1) to (x2, y2).

Definition at line 487 of file qpainter.h.

Here is the call graph for this function:

◆ drawLines() [1/8]

void QPainter::drawLines ( const QLine lines,
int  lineCount 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the first lineCount lines in the array lines using the current pen.

Definition at line 4340 of file qpainter.cpp.

◆ drawLines() [2/8]

void QPainter::drawLines ( const QLineF lines,
int  lineCount 
)

Draws the first lineCount lines in the array lines using the current pen.

See also
drawLine(), drawPolyline()

Definition at line 4291 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawLines() [3/8]

void QPainter::drawLines ( const QList< QLine > &  lines)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the set of lines defined by the list lines using the current pen and brush.

Definition at line 509 of file qpainter.h.

Here is the call graph for this function:

◆ drawLines() [4/8]

void QPainter::drawLines ( const QList< QLineF > &  lines)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the set of lines defined by the list lines using the current pen and brush.

Definition at line 504 of file qpainter.h.

Here is the call graph for this function:

◆ drawLines() [5/8]

void QPainter::drawLines ( const QList< QPoint > &  pointPairs)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a line for each pair of points in the vector pointPairs using the current pen.

Definition at line 519 of file qpainter.h.

Here is the call graph for this function:

◆ drawLines() [6/8]

void QPainter::drawLines ( const QList< QPointF > &  pointPairs)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a line for each pair of points in the vector pointPairs using the current pen. If there is an odd number of points in the array, the last point will be ignored.

Definition at line 514 of file qpainter.h.

Here is the call graph for this function:

◆ drawLines() [7/8]

void QPainter::drawLines ( const QPoint pointPairs,
int  lineCount 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the first lineCount lines in the array pointPairs using the current pen.

Definition at line 4403 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawLines() [8/8]

void QPainter::drawLines ( const QPointF pointPairs,
int  lineCount 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the first lineCount lines in the array pointPairs using the current pen. The lines are specified as pairs of points so the number of entries in pointPairs must be at least lineCount * 2.

Definition at line 4390 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawPath()

void QPainter::drawPath ( const QPainterPath path)

Draws the given painter path using the current pen for outline and the current brush for filling.

\table 100% \row

  • \inlineimage qpainter-path.png
  • \endtable
See also
{painting/painterpaths}{the Painter Paths example},{painting/deform}{the Vector Deformation example}

Definition at line 3171 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPicture() [1/3]

void QPainter::drawPicture ( const QPoint point,
const QPicture picture 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Replays the given picture at the given point.

Definition at line 909 of file qpainter.h.

Here is the call graph for this function:

◆ drawPicture() [2/3]

void QPainter::drawPicture ( const QPointF point,
const QPicture picture 
)

Replays the given picture at the given point.

The QPicture class is a paint device that records and replays QPainter commands. A picture serializes the painter commands to an IO device in a platform-independent format. Everything that can be painted on a widget or pixmap can also be stored in a picture.

This function does exactly the same as QPicture::play() when called with point = QPointF(0, 0).

Note
The state of the painter is preserved by this function.

\table 100% \row

  • \endtable
See also
QPicture::play()

Definition at line 6532 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPicture() [3/3]

void QPainter::drawPicture ( int  x,
int  y,
const QPicture picture 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given picture at point (x, y).

Definition at line 904 of file qpainter.h.

Here is the call graph for this function:

◆ drawPie() [1/3]

void QPainter::drawPie ( const QRect rectangle,
int  startAngle,
int  spanAngle 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a pie defined by the given rectangle, startAngle and and spanAngle.

Definition at line 643 of file qpainter.h.

Here is the call graph for this function:

◆ drawPie() [2/3]

void QPainter::drawPie ( const QRectF rectangle,
int  startAngle,
int  spanAngle 
)

Draws a pie defined by the given rectangle, startAngle and spanAngle.

The pie is filled with the current brush().

The startAngle and spanAngle must be specified in 1/16th of a degree, i.e. a full circle equals 5760 (16 * 360). Positive values for the angles mean counter-clockwise while negative values mean the clockwise direction. Zero degrees is at the 3 o'clock position.

\table 100% \row

  • \inlineimage qpainter-pie.png
  • \endtable
See also
drawEllipse(), drawChord(), {Coordinate System}

Definition at line 4175 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPie() [3/3]

void QPainter::drawPie ( int  x,
int  y,
int  w,
int  h,
int  a,
int  alen 
)
inline

Definition at line 648 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [1/11]

void QPainter::drawPixmap ( const QPoint point,
const QPixmap pixmap 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given pixmap with its origin at the given point.

Definition at line 758 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [2/11]

void QPainter::drawPixmap ( const QPoint point,
const QPixmap pixmap,
const QRect source 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the rectangular portion source of the given pixmap with its origin at the given point.

Definition at line 795 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [3/11]

void QPainter::drawPixmap ( const QPointF point,
const QPixmap pixmap 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given pixmap with its origin at the given point.

Definition at line 4811 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawPixmap() [4/11]

void QPainter::drawPixmap ( const QPointF point,
const QPixmap pixmap,
const QRectF source 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the rectangular portion source of the given pixmap with its origin at the given point.

Definition at line 790 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [5/11]

void QPainter::drawPixmap ( const QRect rectangle,
const QPixmap pixmap 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given pixmap into the given rectangle.

Note
The pixmap is scaled to fit the rectangle, if both the pixmap and rectangle size disagree.

Definition at line 763 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [6/11]

void QPainter::drawPixmap ( const QRect target,
const QPixmap pixmap,
const QRect source 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the rectangular portion source of the given pixmap into the given target in the paint device.

Note
The pixmap is scaled to fit the rectangle, if both the pixmap and rectangle size disagree.

Definition at line 753 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [7/11]

void QPainter::drawPixmap ( const QRectF target,
const QPixmap pixmap,
const QRectF source 
)

Draws the rectangular portion source of the given pixmap into the given target in the paint device.

Note
The pixmap is scaled to fit the rectangle, if both the pixmap and rectangle size disagree.
See \l{Drawing High Resolution Versions of Pixmaps and Images} on how this is affected by QPixmap::devicePixelRatio().

\table 100% \row

  • \endtable

If pixmap is a QBitmap it is drawn with the bits that are "set" using the pens color. If backgroundMode is Qt::OpaqueMode, the "unset" bits are drawn using the color of the background brush; if backgroundMode is Qt::TransparentMode, the "unset" bits are transparent. Drawing bitmaps with gradient or texture colors is not supported.

See also
drawImage(), QPixmap::devicePixelRatio()

Definition at line 4883 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPixmap() [8/11]

void QPainter::drawPixmap ( int  x,
int  y,
const QPixmap pixmap 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given pixmap at position ({x}, {y}).

Definition at line 768 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [9/11]

void QPainter::drawPixmap ( int  x,
int  y,
const QPixmap pixmap,
int  sx,
int  sy,
int  sw,
int  sh 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a pixmap at ({x}, {y}) by copying a part of the given pixmap into the paint device.

({x}, {y}) specifies the top-left point in the paint device that is to be drawn onto. ({sx}, {sy}) specifies the top-left point in pixmap that is to be drawn. The default is (0, 0).

({sw}, {sh}) specifies the size of the pixmap that is to be drawn. The default, (0, 0) (and negative) means all the way to the bottom-right of the pixmap.

Definition at line 784 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [10/11]

void QPainter::drawPixmap ( int  x,
int  y,
int  width,
int  height,
const QPixmap pixmap 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the pixmap into the rectangle at position ({x}, {y}) with the given width and height.

Definition at line 773 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmap() [11/11]

void QPainter::drawPixmap ( int  x,
int  y,
int  w,
int  h,
const QPixmap pixmap,
int  sx,
int  sy,
int  sw,
int  sh 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the rectangular portion with the origin ({sx}, {sy}), width sw and height sh, of the given pixmap , at the point ({x}, {y}), with a width of w and a height of h. If sw or sh are equal to zero the width/height of the pixmap is used and adjusted by the offset sx/sy;

Definition at line 778 of file qpainter.h.

Here is the call graph for this function:

◆ drawPixmapFragments()

void QPainter::drawPixmapFragments ( const PixmapFragment fragments,
int  fragmentCount,
const QPixmap pixmap,
PixmapFragmentHints  hints = PixmapFragmentHints() 
)
Since
4.7

This function is used to draw pixmap, or a sub-rectangle of pixmap, at multiple positions with different scale, rotation and opacity. fragments is an array of fragmentCount elements specifying the parameters used to draw each pixmap fragment. The hints parameter can be used to pass in drawing hints.

This function is potentially faster than multiple calls to drawPixmap(), since the backend can optimize state changes.

See also
QPainter::PixmapFragment, QPainter::PixmapFragmentHint

Definition at line 8009 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawPoint() [1/3]

void QPainter::drawPoint ( const QPoint position)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a single point at the given position using the current pen's color.

Definition at line 591 of file qpainter.h.

Here is the call graph for this function:

◆ drawPoint() [2/3]

void QPainter::drawPoint ( const QPointF position)
inline

Draws a single point at the given position using the current pen's color.

See also
{Coordinate System}

Definition at line 580 of file qpainter.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPoint() [3/3]

void QPainter::drawPoint ( int  x,
int  y 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a single point at position (x, y).

Definition at line 585 of file qpainter.h.

Here is the call graph for this function:

◆ drawPoints() [1/4]

void QPainter::drawPoints ( const QPoint points,
int  pointCount 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the first pointCount points in the array points using the current pen's color.

Definition at line 3509 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawPoints() [2/4]

void QPainter::drawPoints ( const QPointF points,
int  pointCount 
)

Draws the first pointCount points in the array points using the current pen's color.

See also
{Coordinate System}

Definition at line 3447 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPoints() [3/4]

void QPainter::drawPoints ( const QPolygon points)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the points in the vector points.

Definition at line 601 of file qpainter.h.

Here is the call graph for this function:

◆ drawPoints() [4/4]

void QPainter::drawPoints ( const QPolygonF points)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the points in the vector points.

Definition at line 596 of file qpainter.h.

Here is the call graph for this function:

◆ drawPolygon() [1/4]

void QPainter::drawPolygon ( const QPoint points,
int  pointCount,
Qt::FillRule  fillRule = Qt::OddEvenFill 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the polygon defined by the first pointCount points in the array points.

Definition at line 4614 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawPolygon() [2/4]

void QPainter::drawPolygon ( const QPointF points,
int  pointCount,
Qt::FillRule  fillRule = Qt::OddEvenFill 
)

Draws the polygon defined by the first pointCount points in the array points using the current pen and brush.

\table 100% \row

  • \inlineimage qpainter-polygon.png
  • \endtable

The first point is implicitly connected to the last point, and the polygon is filled with the current brush().

If fillRule is Qt::WindingFill, the polygon is filled using the winding fill algorithm. If fillRule is Qt::OddEvenFill, the polygon is filled using the odd-even fill algorithm. See \l{Qt::FillRule} for a more detailed description of these fill rules.

See also
drawConvexPolygon(), drawPolyline(), {Coordinate System}

Definition at line 4575 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPolygon() [3/4]

void QPainter::drawPolygon ( const QPolygon points,
Qt::FillRule  fillRule = Qt::OddEvenFill 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the polygon defined by the given points using the fill rule fillRule.

Definition at line 539 of file qpainter.h.

Here is the call graph for this function:

◆ drawPolygon() [4/4]

void QPainter::drawPolygon ( const QPolygonF points,
Qt::FillRule  fillRule = Qt::OddEvenFill 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the polygon defined by the given points using the fill rule fillRule.

Definition at line 534 of file qpainter.h.

Here is the call graph for this function:

◆ drawPolyline() [1/4]

void QPainter::drawPolyline ( const QPoint points,
int  pointCount 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the polyline defined by the first pointCount points in points using the current pen.

Definition at line 4500 of file qpainter.cpp.

◆ drawPolyline() [2/4]

void QPainter::drawPolyline ( const QPointF points,
int  pointCount 
)

Draws the polyline defined by the first pointCount points in points using the current pen.

Note that unlike the drawPolygon() function the last point is not connected to the first, neither is the polyline filled.

\table 100% \row

  • \endtable
See also
drawLines(), drawPolygon(), {Coordinate System}

Definition at line 4459 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawPolyline() [3/4]

void QPainter::drawPolyline ( const QPolygon points)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the polyline defined by the given points using the current pen.

Definition at line 529 of file qpainter.h.

Here is the call graph for this function:

◆ drawPolyline() [4/4]

void QPainter::drawPolyline ( const QPolygonF points)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the polyline defined by the given points using the current pen.

Definition at line 524 of file qpainter.h.

Here is the call graph for this function:

◆ drawRect() [1/3]

void QPainter::drawRect ( const QRect rectangle)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the current rectangle with the current pen and brush.

Definition at line 565 of file qpainter.h.

Here is the call graph for this function:

◆ drawRect() [2/3]

void QPainter::drawRect ( const QRectF rectangle)
inline

Draws the current rectangle with the current pen and brush.

A filled rectangle has a size of {rectangle}.size(). A stroked rectangle has a size of {rectangle}.size() plus the pen width.

\table 100% \row

  • \inlineimage qpainter-rectangle.png
  • \endtable
See also
drawRects(), drawPolygon(), {Coordinate System}

Definition at line 554 of file qpainter.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawRect() [3/3]

void QPainter::drawRect ( int  x,
int  y,
int  width,
int  height 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a rectangle with upper left corner at ({x}, {y}) and with the given width and height.

Definition at line 559 of file qpainter.h.

Here is the call graph for this function:

◆ drawRects() [1/4]

void QPainter::drawRects ( const QList< QRect > &  rectangles)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given rectangles using the current pen and brush.

Definition at line 575 of file qpainter.h.

◆ drawRects() [2/4]

void QPainter::drawRects ( const QList< QRectF > &  rectangles)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given rectangles using the current pen and brush.

Definition at line 570 of file qpainter.h.

◆ drawRects() [3/4]

void QPainter::drawRects ( const QRect rectangles,
int  rectCount 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the first rectCount of the given rectangles using the current pen and brush.

Definition at line 3347 of file qpainter.cpp.

◆ drawRects() [4/4]

void QPainter::drawRects ( const QRectF rectangles,
int  rectCount 
)

Draws the first rectCount of the given rectangles using the current pen and brush.

See also
drawRect()

Definition at line 3287 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawRoundedRect() [1/3]

void QPainter::drawRoundedRect ( const QRect rect,
qreal  xRadius,
qreal  yRadius,
Qt::SizeMode  mode = Qt::AbsoluteSize 
)
inline
Since
4.4 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given rectangle rect with rounded corners.

Definition at line 612 of file qpainter.h.

Here is the call graph for this function:

◆ drawRoundedRect() [2/3]

void QPainter::drawRoundedRect ( const QRectF rect,
qreal  xRadius,
qreal  yRadius,
Qt::SizeMode  mode = Qt::AbsoluteSize 
)
Since
4.4

Draws the given rectangle rect with rounded corners.

The xRadius and yRadius arguments specify the radii of the ellipses defining the corners of the rounded rectangle. When mode is Qt::RelativeSize, xRadius and yRadius are specified in percentage of half the rectangle's width and height respectively, and should be in the range 0.0 to 100.0.

A filled rectangle has a size of rect.size(). A stroked rectangle has a size of rect.size() plus the pen width.

\table 100% \row

  • \inlineimage qpainter-roundrect.png
  • \endtable
See also
drawRect(), QPen

Definition at line 3924 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawRoundedRect() [3/3]

void QPainter::drawRoundedRect ( int  x,
int  y,
int  w,
int  h,
qreal  xRadius,
qreal  yRadius,
Qt::SizeMode  mode = Qt::AbsoluteSize 
)
inline
Since
4.4 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given rectangle x, y, w, h with rounded corners.

Definition at line 606 of file qpainter.h.

Here is the call graph for this function:

◆ drawStaticText() [1/3]

void QPainter::drawStaticText ( const QPoint topLeftPosition,
const QStaticText staticText 
)
inline
Since
4.7 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the staticText at the topLeftPosition.

Note
The y-position is used as the top of the font.

Definition at line 848 of file qpainter.h.

Here is the call graph for this function:

◆ drawStaticText() [2/3]

void QPainter::drawStaticText ( const QPointF topLeftPosition,
const QStaticText staticText 
)
Since
4.7

Draws the given staticText at the given topLeftPosition.

The text will be drawn using the font and the transformation set on the painter. If the font and/or transformation set on the painter are different from the ones used to initialize the layout of the QStaticText, then the layout will have to be recalculated. Use QStaticText::prepare() to initialize staticText with the font and transformation with which it will later be drawn.

If topLeftPosition is not the same as when staticText was initialized, or when it was last drawn, then there will be a slight overhead when translating the text to its new position.

Note
If the painter's transformation is not affine, then staticText will be drawn using regular calls to drawText(), losing any potential for performance improvement.
The y-position is used as the top of the font.
See also
QStaticText

Definition at line 5470 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawStaticText() [3/3]

void QPainter::drawStaticText ( int  left,
int  top,
const QStaticText staticText 
)
inline
Since
4.7 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the staticText at coordinates left and top.

Note
The y-position is used as the top of the font.

Definition at line 853 of file qpainter.h.

Here is the call graph for this function:

◆ drawText() [1/8]

void QPainter::drawText ( const QPoint position,
const QString text 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given text with the currently defined text direction, beginning at the given position.

By default, QPainter draws text anti-aliased.

Note
The y-position is used as the baseline of the font.
See also
setFont(), setPen()

Definition at line 863 of file qpainter.h.

Here is the call graph for this function:

◆ drawText() [2/8]

void QPainter::drawText ( const QPointF position,
const QString text 
)

Draws the given text with the currently defined text direction, beginning at the given position.

This function does not handle the newline character (\n), as it cannot break text into multiple lines, and it cannot display the newline character. Use the QPainter::drawText() overload that takes a rectangle instead if you want to draw multiple lines of text with the newline character, or if you want the text to be wrapped.

By default, QPainter draws text anti-aliased.

Note
The y-position is used as the baseline of the font.
See also
setFont(), setPen()

Definition at line 5444 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawText() [3/8]

void QPainter::drawText ( const QPointF p,
const QString str,
int  tf,
int  justificationPadding 
)

Definition at line 5599 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawText() [4/8]

void QPainter::drawText ( const QRect rectangle,
int  flags,
const QString text,
QRect boundingRect = nullptr 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given text within the provided rectangle according to the specified flags.

The boundingRect (if not null) is set to the what the bounding rectangle should be in order to enclose the whole text. For example, in the following image, the dotted line represents boundingRect as calculated by the function, and the dashed line represents rectangle:

\table 100% \row

  • \inlineimage qpainter-text-bounds.png
  • \endtable

By default, QPainter draws text anti-aliased.

Note
The y-coordinate of rectangle is used as the top of the font.
See also
setFont(), setPen()

Definition at line 5664 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawText() [5/8]

void QPainter::drawText ( const QRectF rectangle,
const QString text,
const QTextOption option = QTextOption() 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given text in the rectangle specified using the option to control its positioning, direction, and orientation. The options given in option override those set on the QPainter object itself.

By default, QPainter draws text anti-aliased.

Note
The y-coordinate of rectangle is used as the top of the font.
See also
setFont(), setPen()

Definition at line 5870 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawText() [6/8]

void QPainter::drawText ( const QRectF rectangle,
int  flags,
const QString text,
QRectF boundingRect = nullptr 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given text within the provided rectangle. The rectangle along with alignment flags defines the anchors for the text.

\table 100% \row

  • \inlineimage qpainter-text.png
  • \endtable

The boundingRect (if not null) is set to what the bounding rectangle should be in order to enclose the whole text. For example, in the following image, the dotted line represents boundingRect as calculated by the function, and the dashed line represents rectangle:

\table 100% \row

  • \inlineimage qpainter-text-bounds.png
  • \endtable

The flags argument is a bitwise OR of the following flags:

\list

See also
Qt::AlignmentFlag, Qt::TextFlag, boundingRect(), layoutDirection()

By default, QPainter draws text anti-aliased.

Note
The y-coordinate of rectangle is used as the top of the font.

Definition at line 5751 of file qpainter.cpp.

Here is the call graph for this function:

◆ drawText() [7/8]

void QPainter::drawText ( int  x,
int  y,
const QString text 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given text at position ({x}, {y}), using the painter's currently defined text direction.

By default, QPainter draws text anti-aliased.

Note
The y-position is used as the baseline of the font.
See also
setFont(), setPen()

Definition at line 873 of file qpainter.h.

Here is the call graph for this function:

◆ drawText() [8/8]

void QPainter::drawText ( int  x,
int  y,
int  width,
int  height,
int  flags,
const QString text,
QRect boundingRect = nullptr 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws the given text within the rectangle with origin ({x}, {y}), width and height.

The boundingRect (if not null) is set to the what the bounding rectangle should be in order to enclose the whole text. For example, in the following image, the dotted line represents boundingRect as calculated by the function, and the dashed line represents the rectangle defined by x, y, width and height:

\table 100% \row

  • \inlineimage qpainter-text-bounds.png
  • \endtable

The flags argument is a bitwise OR of the following flags:

\list

By default, QPainter draws text anti-aliased.

Note
The y-position is used as the top of the font.
See also
Qt::AlignmentFlag, Qt::TextFlag, setFont(), setPen()

Definition at line 868 of file qpainter.h.

Here is the call graph for this function:

◆ drawTextItem() [1/3]

void QPainter::drawTextItem ( const QPoint p,
const QTextItem ti 
)
inline

Definition at line 858 of file qpainter.h.

Here is the call graph for this function:

◆ drawTextItem() [2/3]

void QPainter::drawTextItem ( const QPointF p,
const QTextItem ti 
)

Definition at line 6114 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawTextItem() [3/3]

void QPainter::drawTextItem ( int  x,
int  y,
const QTextItem ti 
)
inline

Definition at line 800 of file qpainter.h.

Here is the call graph for this function:

◆ drawTiledPixmap() [1/3]

void QPainter::drawTiledPixmap ( const QRect rectangle,
const QPixmap pixmap,
const QPoint position = QPoint() 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a tiled pixmap, inside the given rectangle with its origin at the given position.

Definition at line 743 of file qpainter.h.

Here is the call graph for this function:

◆ drawTiledPixmap() [2/3]

void QPainter::drawTiledPixmap ( const QRectF rectangle,
const QPixmap pixmap,
const QPointF position = QPointF() 
)

Draws a tiled pixmap, inside the given rectangle with its origin at the given position.

Calling drawTiledPixmap() is similar to calling drawPixmap() several times to fill (tile) an area with a pixmap, but is potentially much more efficient depending on the underlying window system.

drawTiledPixmap() will produce the same visual tiling pattern on high-dpi displays (with devicePixelRatio > 1), compared to normal- dpi displays. Set the devicePixelRatio on the pixmap to control the tile size. For example, setting it to 2 halves the tile width and height (on both 1x and 2x displays), and produces high-resolution output on 2x displays.

The position offset is always in the painter coordinate system, indepentent of display devicePixelRatio.

See also
drawPixmap()

Definition at line 6402 of file qpainter.cpp.

Here is the caller graph for this function:

◆ drawTiledPixmap() [3/3]

void QPainter::drawTiledPixmap ( int  x,
int  y,
int  width,
int  height,
const QPixmap pixmap,
int  sx = 0,
int  sy = 0 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Draws a tiled pixmap in the specified rectangle.

({x}, {y}) specifies the top-left point in the paint device that is to be drawn onto; with the given width and height. ({sx}, {sy}) specifies the top-left point in the pixmap that is to be drawn; this defaults to (0, 0).

Definition at line 748 of file qpainter.h.

Here is the call graph for this function:

◆ end()

bool QPainter::end ( )

Ends painting. Any resources used while painting are released. You don't normally need to call this since it is called by the destructor.

Returns true if the painter is no longer active; otherwise returns false.

See also
begin(), isActive()

Definition at line 1877 of file qpainter.cpp.

Here is the caller graph for this function:

◆ endNativePainting()

void QPainter::endNativePainting ( )
Since
4.6

Restores the painter after manually issuing native painting commands. Lets the painter restore any native state that it relies on before calling any other painter commands.

See also
beginNativePainting()

Definition at line 1988 of file qpainter.cpp.

Here is the caller graph for this function:

◆ eraseRect() [1/3]

void QPainter::eraseRect ( const QRect rectangle)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Erases the area inside the given rectangle.

Definition at line 668 of file qpainter.h.

Here is the call graph for this function:

◆ eraseRect() [2/3]

void QPainter::eraseRect ( const QRectF rectangle)

Erases the area inside the given rectangle. Equivalent to calling

See also
fillRect()

Definition at line 6573 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ eraseRect() [3/3]

void QPainter::eraseRect ( int  x,
int  y,
int  width,
int  height 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Erases the area inside the rectangle beginning at (x, y) with the given width and height.

Definition at line 673 of file qpainter.h.

Here is the call graph for this function:

◆ fillPath()

void QPainter::fillPath ( const QPainterPath path,
const QBrush brush 
)

Fills the given path using the given brush. The outline is not drawn.

Alternatively, you can specify a QColor instead of a QBrush; the QBrush constructor (taking a QColor argument) will automatically create a solid pattern brush.

See also
drawPath()

Definition at line 3127 of file qpainter.cpp.

Here is the caller graph for this function:

◆ fillRect() [1/15]

void QPainter::fillRect ( const QRect rectangle,
const QBrush brush 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the specified brush.

Definition at line 6679 of file qpainter.cpp.

◆ fillRect() [2/15]

void QPainter::fillRect ( const QRect rectangle,
const QColor color 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the color specified.

Since
4.5

Definition at line 6717 of file qpainter.cpp.

Here is the call graph for this function:

◆ fillRect() [3/15]

void QPainter::fillRect ( const QRect rectangle,
QGradient::Preset  preset 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the specified gradient preset.

Since
5.12

Definition at line 723 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [4/15]

void QPainter::fillRect ( const QRect rectangle,
Qt::BrushStyle  style 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the brush style specified.

Since
4.5

Definition at line 708 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [5/15]

void QPainter::fillRect ( const QRect rectangle,
Qt::GlobalColor  color 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the specified color.

Since
4.5

Definition at line 693 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [6/15]

void QPainter::fillRect ( const QRectF rectangle,
const QBrush brush 
)

Fills the given rectangle with the brush specified.

Alternatively, you can specify a QColor instead of a QBrush; the QBrush constructor (taking a QColor argument) will automatically create a solid pattern brush.

See also
drawRect()

Definition at line 6644 of file qpainter.cpp.

Here is the caller graph for this function:

◆ fillRect() [7/15]

void QPainter::fillRect ( const QRectF rectangle,
const QColor color 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the color specified.

Since
4.5

Definition at line 6741 of file qpainter.cpp.

Here is the call graph for this function:

◆ fillRect() [8/15]

void QPainter::fillRect ( const QRectF rectangle,
QGradient::Preset  preset 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the specified gradient preset.

Since
5.12

Definition at line 728 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [9/15]

void QPainter::fillRect ( const QRectF rectangle,
Qt::BrushStyle  style 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the brush style specified.

Since
4.5

Definition at line 713 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [10/15]

void QPainter::fillRect ( const QRectF rectangle,
Qt::GlobalColor  color 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the given rectangle with the specified color.

Since
4.5

Definition at line 698 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [11/15]

void QPainter::fillRect ( int  x,
int  y,
int  width,
int  height,
const QBrush brush 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the rectangle beginning at ({x}, {y}) with the given width and height, using the given brush.

Definition at line 678 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [12/15]

void QPainter::fillRect ( int  x,
int  y,
int  width,
int  height,
const QColor color 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the rectangle beginning at ({x}, {y}) with the given width and height, using the given color.

Since
4.5

Definition at line 683 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [13/15]

void QPainter::fillRect ( int  x,
int  y,
int  width,
int  height,
QGradient::Preset  preset 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the rectangle beginning at ({x}, {y}) with the given width and height, using the given gradient preset.

Since
5.12

Definition at line 718 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [14/15]

void QPainter::fillRect ( int  x,
int  y,
int  width,
int  height,
Qt::BrushStyle  style 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the rectangle beginning at ({x}, {y}) with the given width and height, using the brush style specified.

Since
4.5

Definition at line 703 of file qpainter.h.

Here is the call graph for this function:

◆ fillRect() [15/15]

void QPainter::fillRect ( int  x,
int  y,
int  width,
int  height,
Qt::GlobalColor  color 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Fills the rectangle beginning at ({x}, {y}) with the given width and height, using the given color.

Since
4.5

Definition at line 688 of file qpainter.h.

Here is the call graph for this function:

◆ font()

const QFont & QPainter::font ( ) const

Returns the currently set font used for drawing text.

See also
setFont(), drawText(), {QPainter::Settings}{Settings}

Definition at line 3890 of file qpainter.cpp.

Here is the caller graph for this function:

◆ fontInfo()

QFontInfo QPainter::fontInfo ( ) const

Returns the font info for the painter if the painter is active. Otherwise, the return value is undefined.

See also
font(), isActive(), {QPainter::Settings}{Settings}

Definition at line 2027 of file qpainter.cpp.

◆ fontMetrics()

QFontMetrics QPainter::fontMetrics ( ) const

Returns the font metrics for the painter if the painter is active. Otherwise, the return value is undefined.

See also
font(), isActive(), {QPainter::Settings}{Settings}

Definition at line 2009 of file qpainter.cpp.

Here is the caller graph for this function:

◆ hasClipping()

bool QPainter::hasClipping ( ) const

Returns true if clipping has been set; otherwise returns false.

See also
setClipping(), {QPainter::Clipping}{Clipping}

Definition at line 2430 of file qpainter.cpp.

Here is the caller graph for this function:

◆ isActive()

bool QPainter::isActive ( ) const

Returns true if begin() has been called and end() has not yet been called; otherwise returns false.

See also
begin(), QPaintDevice::paintingActive()

Definition at line 1544 of file qpainter.cpp.

Here is the caller graph for this function:

◆ layoutDirection()

Qt::LayoutDirection QPainter::layoutDirection ( ) const

Returns the layout direction used by the painter when drawing text.

See also
QTextOption::textDirection(), setLayoutDirection(), drawText(), {QPainter::Settings}{Settings}

Definition at line 7367 of file qpainter.cpp.

Here is the caller graph for this function:

◆ opacity()

qreal QPainter::opacity ( ) const
Since
4.2

Returns the opacity of the painter. The default value is 1.

Definition at line 2044 of file qpainter.cpp.

Here is the caller graph for this function:

◆ paintEngine()

QPaintEngine * QPainter::paintEngine ( ) const

Returns the paint engine that the painter is currently operating on if the painter is active; otherwise 0.

See also
isActive()

Definition at line 1929 of file qpainter.cpp.

Here is the caller graph for this function:

◆ pen()

const QPen & QPainter::pen ( ) const

Returns the painter's current pen.

See also
setPen(), {QPainter::Settings}{Settings}

Definition at line 3736 of file qpainter.cpp.

Here is the caller graph for this function:

◆ renderHints()

QPainter::RenderHints QPainter::renderHints ( ) const

Returns a flag that specifies the rendering hints that are set for this painter.

See also
testRenderHint(), {QPainter::Rendering Quality}{Rendering Quality}

Definition at line 6897 of file qpainter.cpp.

Here is the caller graph for this function:

◆ resetTransform()

void QPainter::resetTransform ( )

Resets any transformations that were made using translate(), scale(), shear(), rotate(), setWorldTransform(), setViewport() and setWindow().

See also
{Coordinate Transformations}

Definition at line 7913 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ restore()

void QPainter::restore ( )

Restores the current painter state (pops a saved state off the stack).

See also
save()

Definition at line 1611 of file qpainter.cpp.

Here is the caller graph for this function:

◆ rotate()

void QPainter::rotate ( qreal  angle)

Rotates the coordinate system clockwise. The given angle parameter is in degrees.

See also
setWorldTransform(), {QPainter::Coordinate Transformations}{Coordinate Transformations}

Definition at line 2970 of file qpainter.cpp.

Here is the caller graph for this function:

◆ save()

void QPainter::save ( )

Saves the current painter state (pushes the state onto a stack). A save() must be followed by a corresponding restore(); the end() function unwinds the stack.

See also
restore()

Definition at line 1577 of file qpainter.cpp.

Here is the caller graph for this function:

◆ scale()

void QPainter::scale ( qreal  sx,
qreal  sy 
)

Scales the coordinate system by ({sx}, {sy}).

See also
setWorldTransform(), {QPainter::Coordinate Transformations}{Coordinate Transformations}

Definition at line 2922 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setBackground()

void QPainter::setBackground ( const QBrush brush)

Sets the background brush of the painter to the given brush.

The background brush is the brush that is filled in when drawing opaque text, stippled lines and bitmaps. The background brush has no effect in transparent background mode (which is the default).

See also
background(), setBackgroundMode(), {QPainter::Settings}{Settings}

Definition at line 3836 of file qpainter.cpp.

Here is the call graph for this function:

◆ setBackgroundMode()

void QPainter::setBackgroundMode ( Qt::BGMode  mode)

Sets the background mode of the painter to the given mode

Qt::TransparentMode (the default) draws stippled lines and text without setting the background pixels. Qt::OpaqueMode fills these space with the current background color.

Note that in order to draw a bitmap or pixmap transparently, you must use QPixmap::setMask().

See also
backgroundMode(), setBackground(), {QPainter::Settings}{Settings}

Definition at line 3594 of file qpainter.cpp.

◆ setBrush() [1/2]

void QPainter::setBrush ( const QBrush brush)

Sets the painter's brush to the given brush.

The painter's brush defines how shapes are filled.

See also
brush(), {QPainter::Settings}{Settings}

Definition at line 3755 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setBrush() [2/2]

void QPainter::setBrush ( Qt::BrushStyle  style)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the painter's brush to black color and the specified style.

Definition at line 3789 of file qpainter.cpp.

◆ setBrushOrigin() [1/3]

void QPainter::setBrushOrigin ( const QPoint position)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the brush's origin to the given position.

Definition at line 738 of file qpainter.h.

Here is the call graph for this function:

◆ setBrushOrigin() [2/3]

void QPainter::setBrushOrigin ( const QPointF position)

Sets the brush origin to position.

The brush origin specifies the (0, 0) coordinate of the painter's brush.

Note that while the brushOrigin() was necessary to adopt the parent's background for a widget in Qt 3, this is no longer the case since the Qt 4 painter doesn't paint the background unless you explicitly tell it to do so by setting the widget's \l {QWidget::autoFillBackground}{autoFillBackground} property to true.

See also
brushOrigin(), {QPainter::Settings}{Settings}

Definition at line 2122 of file qpainter.cpp.

◆ setBrushOrigin() [3/3]

void QPainter::setBrushOrigin ( int  x,
int  y 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the brush's origin to point (x, y).

Definition at line 733 of file qpainter.h.

Here is the caller graph for this function:

◆ setClipPath()

void QPainter::setClipPath ( const QPainterPath path,
Qt::ClipOperation  operation = Qt::ReplaceClip 
)

Enables clipping, and sets the clip path for the painter to the given path, with the clip operation.

Note that the clip path is specified in logical (painter) coordinates.

See also
clipPath(), clipRegion(), {QPainter::Clipping}{Clipping}

Definition at line 3038 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setClipping()

void QPainter::setClipping ( bool  enable)

Enables clipping if enable is true, or disables clipping if enable is false.

See also
hasClipping(), {QPainter::Clipping}{Clipping}

Definition at line 2448 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setClipRect() [1/3]

void QPainter::setClipRect ( const QRect rectangle,
Qt::ClipOperation  operation = Qt::ReplaceClip 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Enables clipping, and sets the clip region to the given rectangle using the given clip operation.

Definition at line 2772 of file qpainter.cpp.

Here is the call graph for this function:

◆ setClipRect() [2/3]

void QPainter::setClipRect ( const QRectF rectangle,
Qt::ClipOperation  operation = Qt::ReplaceClip 
)

Enables clipping, and sets the clip region to the given rectangle using the given clip operation. The default operation is to replace the current clip rectangle.

Note that the clip rectangle is specified in logical (painter) coordinates.

See also
clipRegion(), setClipping(), {QPainter::Clipping}{Clipping}

Definition at line 2717 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setClipRect() [3/3]

void QPainter::setClipRect ( int  x,
int  y,
int  width,
int  height,
Qt::ClipOperation  operation = Qt::ReplaceClip 
)
inline

Enables clipping, and sets the clip region to the rectangle beginning at (x, y) with the given width and height.

Definition at line 663 of file qpainter.h.

Here is the call graph for this function:

◆ setClipRegion()

void QPainter::setClipRegion ( const QRegion region,
Qt::ClipOperation  operation = Qt::ReplaceClip 
)

Sets the clip region to the given region using the specified clip operation. The default clip operation is to replace the current clip region.

Note that the clip region is given in logical coordinates.

See also
clipRegion(), setClipRect(), {QPainter::Clipping}{Clipping}

Definition at line 2826 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setCompositionMode()

void QPainter::setCompositionMode ( CompositionMode  mode)

Sets the composition mode to the given mode.

Warning
Only a QPainter operating on a QImage fully supports all composition modes. The RasterOp modes are supported for X11 as described in compositionMode().
See also
compositionMode()

Definition at line 2353 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setFont()

void QPainter::setFont ( const QFont font)

Sets the painter's font to the given font.

This font is used by subsequent drawText() functions. The text color is the same as the pen color.

If you set a font that isn't available, Qt finds a close match. font() will return what you set using setFont() and fontInfo() returns the font actually being used (which may be the same).

See also
font(), drawText(), {QPainter::Settings}{Settings}

Definition at line 3866 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setLayoutDirection()

void QPainter::setLayoutDirection ( Qt::LayoutDirection  direction)

Sets the layout direction used by the painter when drawing text, to the specified direction.

The default is Qt::LayoutDirectionAuto, which will implicitly determine the direction from the text drawn.

See also
QTextOption::setTextDirection(), layoutDirection(), drawText(), {QPainter::Settings}{Settings}

Definition at line 7355 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setOpacity()

void QPainter::setOpacity ( qreal  opacity)
Since
4.2

Sets the opacity of the painter to opacity. The value should be in the range 0.0 to 1.0, where 0.0 is fully transparent and 1.0 is fully opaque.

Opacity set on the painter will apply to all drawing operations individually.

Definition at line 2065 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setPen() [1/3]

void QPainter::setPen ( const QColor color)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the painter's pen to have style Qt::SolidLine, width 1 and the specified color.

Definition at line 3640 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setPen() [2/3]

void QPainter::setPen ( const QPen pen)

Sets the painter's pen to be the given pen.

The pen defines how to draw lines and outlines, and it also defines the text color.

See also
pen(), {QPainter::Settings}{Settings}

Definition at line 3673 of file qpainter.cpp.

Here is the call graph for this function:

◆ setPen() [3/3]

void QPainter::setPen ( Qt::PenStyle  style)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the painter's pen to have the given style, width 1 and black color.

Definition at line 3708 of file qpainter.cpp.

Here is the call graph for this function:

◆ setRenderHint()

void QPainter::setRenderHint ( RenderHint  hint,
bool  on = true 
)

Sets the given render hint on the painter if on is true; otherwise clears the render hint.

See also
setRenderHints(), renderHints(), {QPainter::Rendering Quality}{Rendering Quality}

Definition at line 6845 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setRenderHints()

void QPainter::setRenderHints ( RenderHints  hints,
bool  on = true 
)
Since
4.2

Sets the given render hints on the painter if on is true; otherwise clears the render hints.

See also
setRenderHint(), renderHints(), {QPainter::Rendering Quality}{Rendering Quality}

Definition at line 6871 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setTransform()

void QPainter::setTransform ( const QTransform transform,
bool  combine = false 
)
Since
4.3

Sets the world transformation matrix. If combine is true, the specified transform is combined with the current matrix; otherwise it replaces the current matrix.

See also
transform(), setWorldTransform()

Definition at line 7861 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setViewport() [1/2]

void QPainter::setViewport ( const QRect rectangle)

Sets the painter's viewport rectangle to the given rectangle, and enables view transformations.

The viewport rectangle is part of the view transformation. The viewport specifies the device coordinate system. Its sister, the window(), specifies the logical coordinate system.

The default viewport rectangle is the same as the device's rectangle.

See also
viewport(), viewTransformEnabled(), {Coordinate System::Window-Viewport Conversion}{Window-Viewport Conversion}

Definition at line 7022 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setViewport() [2/2]

void QPainter::setViewport ( int  x,
int  y,
int  width,
int  height 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the painter's viewport rectangle to be the rectangle beginning at (x, y) with the given width and height.

Definition at line 893 of file qpainter.h.

Here is the call graph for this function:

◆ setViewTransformEnabled()

void QPainter::setViewTransformEnabled ( bool  enable)

Enables view transformations if enable is true, or disables view transformations if enable is false.

See also
viewTransformEnabled(), {Coordinate System::Window-Viewport Conversion}{Window-Viewport Conversion}

Definition at line 7069 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setWindow() [1/2]

void QPainter::setWindow ( const QRect rectangle)

Sets the painter's window to the given rectangle, and enables view transformations.

The window rectangle is part of the view transformation. The window specifies the logical coordinate system. Its sister, the viewport(), specifies the device coordinate system.

The default window rectangle is the same as the device's rectangle.

See also
window(), viewTransformEnabled(), {Coordinate System::Window-Viewport Conversion}{Window-Viewport Conversion}

Definition at line 6958 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setWindow() [2/2]

void QPainter::setWindow ( int  x,
int  y,
int  width,
int  height 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets the painter's window to the rectangle beginning at (x, y) and the given width and height.

Definition at line 898 of file qpainter.h.

Here is the call graph for this function:

◆ setWorldMatrixEnabled()

void QPainter::setWorldMatrixEnabled ( bool  enable)
Since
4.2

Enables transformations if enable is true, or disables transformations if enable is false. The world transformation matrix is not changed.

See also
worldMatrixEnabled(), worldTransform(), {QPainter::Coordinate Transformations}{Coordinate Transformations}

Definition at line 2878 of file qpainter.cpp.

Here is the caller graph for this function:

◆ setWorldTransform()

void QPainter::setWorldTransform ( const QTransform matrix,
bool  combine = false 
)

Sets the world transformation matrix. If combine is true, the specified matrix is combined with the current matrix; otherwise it replaces the current matrix.

See also
transform(), setTransform()

Definition at line 7945 of file qpainter.cpp.

Here is the caller graph for this function:

◆ shear()

void QPainter::shear ( qreal  sh,
qreal  sv 
)

Shears the coordinate system by ({sh}, {sv}).

See also
setWorldTransform(), {QPainter::Coordinate Transformations}{Coordinate Transformations}

Definition at line 2945 of file qpainter.cpp.

Here is the caller graph for this function:

◆ strokePath()

void QPainter::strokePath ( const QPainterPath path,
const QPen pen 
)

Draws the outline (strokes) the path path with the pen specified by pen

See also
fillPath(), {QPainter::Drawing}{Drawing}

Definition at line 3087 of file qpainter.cpp.

Here is the caller graph for this function:

◆ testRenderHint()

bool QPainter::testRenderHint ( RenderHint  hint) const
inline
Since
4.3

Returns true if hint is set; otherwise returns false.

See also
renderHints(), setRenderHint()

Definition at line 442 of file qpainter.h.

Here is the caller graph for this function:

◆ transform()

const QTransform & QPainter::transform ( ) const

Alias for worldTransform(). Returns the world transformation matrix.

See also
worldTransform()

Definition at line 7873 of file qpainter.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ translate() [1/3]

void QPainter::translate ( const QPoint offset)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Translates the coordinate system by the given offset.

Definition at line 888 of file qpainter.h.

Here is the call graph for this function:

◆ translate() [2/3]

void QPainter::translate ( const QPointF offset)

Translates the coordinate system by the given offset; i.e. the given offset is added to points.

See also
setWorldTransform(), {QPainter::Coordinate Transformations}{Coordinate Transformations}

Definition at line 2993 of file qpainter.cpp.

Here is the caller graph for this function:

◆ translate() [3/3]

void QPainter::translate ( qreal  dx,
qreal  dy 
)
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Translates the coordinate system by the vector (dx, dy).

Definition at line 883 of file qpainter.h.

Here is the call graph for this function:

◆ viewport()

QRect QPainter::viewport ( ) const

Returns the viewport rectangle.

See also
setViewport(), setViewTransformEnabled()

Definition at line 7051 of file qpainter.cpp.

Here is the caller graph for this function:

◆ viewTransformEnabled()

bool QPainter::viewTransformEnabled ( ) const

Returns true if view transformation is enabled; otherwise returns false.

See also
setViewTransformEnabled(), worldTransform()

Definition at line 6923 of file qpainter.cpp.

◆ window()

QRect QPainter::window ( ) const

Returns the window rectangle.

See also
setWindow(), setViewTransformEnabled()

Definition at line 6987 of file qpainter.cpp.

Here is the caller graph for this function:

◆ worldMatrixEnabled()

bool QPainter::worldMatrixEnabled ( ) const
Since
4.2

Returns true if world transformation is enabled; otherwise returns false.

See also
setWorldMatrixEnabled(), worldTransform(), {Coordinate System}

Definition at line 2906 of file qpainter.cpp.

◆ worldTransform()

const QTransform & QPainter::worldTransform ( ) const

Returns the world transformation matrix.

Definition at line 7967 of file qpainter.cpp.

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ QAlphaPaintEngine

friend class QAlphaPaintEngine
friend

Definition at line 466 of file qpainter.h.

◆ QFontEngine

friend class QFontEngine
friend

Definition at line 455 of file qpainter.h.

◆ QFontEngineBox

friend class QFontEngineBox
friend

Definition at line 456 of file qpainter.h.

◆ QFontEngineFT

friend class QFontEngineFT
friend

Definition at line 457 of file qpainter.h.

◆ QFontEngineMac

friend class QFontEngineMac
friend

Definition at line 458 of file qpainter.h.

◆ QFontEngineWin

friend class QFontEngineWin
friend

Definition at line 459 of file qpainter.h.

◆ QOpenGLPaintEngine

friend class QOpenGLPaintEngine
friend

Definition at line 462 of file qpainter.h.

◆ QPaintEngine

friend class QPaintEngine
friend

Definition at line 460 of file qpainter.h.

◆ QPaintEngineExPrivate

friend class QPaintEngineExPrivate
friend

Definition at line 461 of file qpainter.h.

◆ QPreviewPaintEngine

friend class QPreviewPaintEngine
friend

Definition at line 467 of file qpainter.h.

◆ QRasterPaintEngine

friend class QRasterPaintEngine
friend

Definition at line 465 of file qpainter.h.

◆ QTextEngine

friend class QTextEngine
friend

Definition at line 468 of file qpainter.h.

◆ QWidget

friend class QWidget
friend

Definition at line 454 of file qpainter.h.

◆ QWin32PaintEngine

friend class QWin32PaintEngine
friend

Definition at line 463 of file qpainter.h.

◆ QWin32PaintEnginePrivate

friend class QWin32PaintEnginePrivate
friend

Definition at line 464 of file qpainter.h.


The documentation for this class was generated from the following files: