绘图系统#

一个使用相同 API 在屏幕或打印设备上绘图的系统

Qt 的绘图系统能够使用相同的 API 在屏幕和打印设备上绘图,主要基于 QPainterQPaintDevice,以及 QPaintEngine 类。

QPainter 用于执行绘图操作,QPaintDevice 是一个二维空间的抽象,可以使用 QPainter 进行绘制,而 QPaintEngine 为 painter 提供了绘制到不同类型设备上的接口。QPaintEngine 类由 QPainterQPaintDevice 内部使用,除非应用编程人员创建自己的设备类型,否则它对应用程序编程人员而言是隐藏的。

../_images/paintsystem-core.png

这种方法的主要优点是所有绘图都遵循相同的绘画流程,这使得添加新功能支持以及为不支持的功能提供默认实现变得容易。

主题#

绘图类#

这些类提供在绘图设备上进行绘图的支撑。

PySide6.QtGui.QBitmap

QBitmap 类提供单色(1 位深度)位图。

PySide6.QtGui.QIcon

QIcon 类提供不同模式和状态下可缩放图标。

PySide6.QtGui.QIconEngine

QIconEngine 类为 QIcon 渲染器提供一个抽象基类。

PySide6.QtGui.QImage

QImage 类提供了一个硬件无关的图像表示,允许直接访问像素数据,并可以用作绘图设备。

PySide6.QtGui.QImageReader

QImageReader 类提供了一个格式无关的接口,用于从文件或其他设备读取图像。

PySide6.QtGui.QImageWriter

QImageWriter 类提供了对文件或其他设备写入图片的格式无关接口。

PySide6.QtGui.QPixmap

QPixmap 类是一个离屏图像表示,可以用作绘图设备。

PySide6.QtGui.QGenericMatrix

QGenericMatrix 类是一个模板类,用于表示一个具有 N 列和 M 行的 NxM 转换矩阵。

PySide6.QtGui.QVector2D

QVector2D 类表示二维空间中的向量或顶点。

PySide6.QtGui.QBrush

QBrush 类定义了 QPainter 绘制的形状的填充图案。

PySide6.QtGui.QGradient

QGradient 类用于与 QBrush 结合来指定渐变填充。

PySide6.QtGui.QLinearGradient

QLinearGradient 类用于与 QBrush 结合来指定线性渐变画刷。

PySide6.QtGui.QRadialGradient

QRadialGradient 类用于与 QBrush 结合来指定径向渐变画刷。

PySide6.QtGui.QConicalGradient

QConicalGradient 类用于与 QBrush 结合来指定圆锥形渐变画刷。

PySide6.QtGui.QColor

QColor 类基于 RGB、HSV 或 CMYK 值提供颜色。

PySide6.QtGui.QColorSpace

QColorSpace 类提供了颜色空间抽象。

PySide6.QtGui.QColorTransform

QColorTransform 类是在颜色空间之间的转换。

PySide6.QtGui.QPagedPaintDevice

QPagedPaintDevice 类表示支持多个页的绘图设备。

PySide6.QtGui.QPageRanges

QPageRanges 类表示页范围的集合。

PySide6.QtGui.QPaintDevice

QPaintDevice 类是 QPainter 可以绘制的对象的基类。

PySide6.QtGui.QPaintEngine

QPaintEngine 类提供了一个在特定平台上将 QPainter 绘制到指定设备上的抽象定义。

PySide6.QtGui.QPainter

QPainter 类在窗口小部件和其他绘图设备上执行低级别绘图。

PySide6.QtGui.QPainterPath

QPainterPath 类提供绘画操作的容器,允许构建和重用图形形状。

PySide6.QtGui.QPainterPathStroker

QPainterPathStroker 类用于为 painter path 生成可填充的轮廓。

PySide6.QtGui.QPdfWriter

QPdfWriter 类是一个可以用于绘图设备的 PDF 生成类。

PySide6.QtGui.QPen

QPen 类定义了 QPainter 应如何绘制形状的线条和轮廓。

PySide6.QtGui.QPolygon

QPolygon 类提供使用整数精度点的列表。

PySide6.QtGui.QPolygonF

QPolygonF 类提供使用浮点精度点的列表。

PySide6.QtGui.QRegion

QRegion 类指定画家的裁剪区域。

PySide6.QtGui.QRgba64

QRgba64 结构体包含一个 64 位 RGB 颜色。

QRgbaFloat

QRgbaFloat 结构体包含四个部分 RGBA 浮点颜色。

PySide6.QtGui.QTransform

QTransform 类指定二维坐标系的 2D 变换。

PySide6.QtGui.QFont

QFont 类指定用于绘图的字体查询。

PySide6.QtGui.QFontMetrics

QFontMetrics 类提供字体度量信息。

PySide6.QtGui.QFontMetricsF

QFontMetricsF 类提供字体度量信息。

QSupportedWritingSystems

QSupportedWritingSystems 类在将字体注册到内部 Qt 字体数据库时使用。