このページでは

ペイントシステム

Qt のペイントシステムは、画面上のウィジェット、画像、印刷ページなど、さまざまな表面にグラフィックスをレンダリングするための、統一された柔軟なフレームワークを提供します。これは主に、QPainter 、QPaintDevice 、およびQPaintEngine クラスを中心に構築されています。

QPainter は描画操作を実行するために使用され、QPaintDevice はQPainter を使用して描画できる2次元空間の抽象化であり、QPaintEngine はペインターがさまざまな種類のデバイスに描画するために使用するインターフェースを提供します。QPaintEngine クラスは、QPainter およびQPaintDevice によって内部的に使用され、アプリケーションプログラマーが独自のデバイスタイプを作成しない限り、その存在は隠されています。

塗料システムの関係を示す図

このアプローチの主な利点は、すべての描画が同一の描画パイプラインに従うため、新機能のサポートを容易に追加でき、未サポートの機能に対してはデフォルトの実装が提供されることです。

トピック

描画用クラス

これらのクラスは、ペイントデバイスへの描画をサポートします。

QBitmap

モノクロ(1ビット深度)ピクマップ

QBrush

QPainter によって描画される図形の塗りつぶしパターンを定義します

QColor

RGB、HSV、またはCMYK値に基づく色

QColorSpace

色空間の抽象化

QColorTransform

色空間間の変換

QConicalGradient

QBrush と組み合わせて、円錐グラデーションブラシを指定するために使用される

QFont

テキストの描画に使用されるフォントに対するクエリを指定します

QFontMetrics

フォントメトリクス情報

QFontMetricsF

フォントメトリクス情報

QGenericMatrix

N 列、M 行からなる N × M の変換行列を表すテンプレートクラス

QGradient

QBrush と組み合わせて、グラデーション塗りつぶしを指定するために使用されます

QIcon

さまざまなモードや状態に対応したスケーラブルなアイコン

QIconEngine

QIconレンダラーの抽象基底クラス

QImage

ピクセルデータへの直接アクセスを可能にし、描画デバイスとしても使用できる、ハードウェア非依存の画像表現

QImageReader

ファイルやその他のデバイスから画像を読み込むための、フォーマットに依存しないインターフェース

QImageWriter

ファイルやその他のデバイスに画像を書き込むための、フォーマットに依存しないインターフェース

QLine

整数精度を用いた2次元ベクトル

QLineF

浮動小数点精度を使用する2次元ベクトル

QLinearGradient

QBrush と組み合わせて、線形グラデーションブラシを指定するために使用される

QMargins

矩形の4つの余白を定義する

QMarginsF

矩形の4つの余白を定義します

QPageRanges

ページ範囲の集合を表す

QPagedPaintDevice

複数のページをサポートする描画デバイスを表す

QPaintDevice

QPainter を使用して描画可能なオブジェクトの基底クラス

QPaintEngine

特定のプラットフォーム上で、QPainterが特定のデバイスに描画を行う方法の抽象的な定義

QPainter

ウィジェットやその他の描画デバイスに対して低レベルの描画を実行する

QPainterPath

描画操作のコンテナであり、グラフィカルな形状の構築と再利用を可能にする

QPainterPathStroker

指定されたペインターパスに対して、塗りつぶし可能なアウトラインを生成するために使用される

QPainterStateGuard

QPainter::save() および QPainter::restore() の呼び出しをバランスよく行うための RAII 利便性クラス

QPdfOutputIntent

QPdfWriter

描画デバイスとして使用できるPDFを生成するためのクラス

QPen

QPainterが図形の線やアウトラインをどのように描画すべきかを定義する

QPixmap

描画デバイスとして使用できるオフスクリーン画像表現

QPoint

整数精度を用いて平面上の点を定義する

QPointF

浮動小数点精度を用いて平面上の点を定義する

QPolygon

整数精度を用いた点のリスト

QPolygonF

浮動小数点精度を用いた点のリスト

QRadialGradient

QBrush と組み合わせて、放射状グラデーションブラシを指定するために使用される

QRect

整数精度を使用して平面上の矩形を定義します

QRectF

浮動小数点精度を使用して、平面上の有限の矩形を定義します

QRegion

ペインターのクリップ領域を指定します

QRgba64

構造体には64ビットのRGB色が格納されている

QRgbaFloat

構造体には、4つの部分からなるRGBA浮動小数点色情報が含まれています

QSize

整数小数点精度を使用して、2次元オブジェクトのサイズを定義します

QSizeF

浮動小数点精度を使用して、2次元オブジェクトのサイズを定義します

QStylePainter

ウィジェット内でQStyle要素を描画するための利便性クラス

QSupportedWritingSystems

Qtの内部フォントデータベースにフォントを登録する際に使用される

QSvgGenerator

SVG 描画の作成に使用されるペイントデバイス

QSvgRenderer

SVGファイルの内容をペイントデバイス上に描画するために使用されます

QSvgWidget

Scalable Vector Graphics (SVG) ファイルの内容を表示するために使用されるウィジェット

QTransform

座標系の2次元変換を指定します

QVector2D

2D空間におけるベクトルまたは頂点を表す

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.