QPicture Class

QPictureクラスは、QPainter コマンドを記録・再生するペイント・デバイスです。詳細...

Header: #include <QPicture>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Inherits: QPaintDevice

パブリック関数

QPicture(int formatVersion = -1)
QPicture(const QPicture &pic)
virtual ~QPicture()
QRect boundingRect() const
const char *data() const
bool isNull() const
bool load(const QString &fileName)
bool load(QIODevice *dev)
bool play(QPainter *painter)
bool save(const QString &fileName)
bool save(QIODevice *dev)
void setBoundingRect(const QRect &r)
virtual void setData(const char *data, uint size)
uint size() const
void swap(QPicture &other)
QPicture &operator=(QPicture &&other)
QPicture &operator=(const QPicture &p)
QDataStream &operator<<(QDataStream &s, const QPicture &r)
QDataStream &operator>>(QDataStream &s, QPicture &r)

詳細説明

ピクチャは、プラットフォームに依存しないフォーマットでIOデバイスへのペインターコマンドをシリアライズします。これらはメタファイルと呼ばれることもあります。

Qt のピクチャは独自のバイナリフォーマットを使用します。多くのウィンドウシステムのネイティブなピクチャ(メタファイル)フォーマットとは異なり、Qt のピクチャはその内容に関して制限がありません。ウィジェットやピクセルマップに描画できるものすべて(フォント、ピクセルマップ、リージョン、変換されたグラフィックなど)をピクチャに格納することができます。

QPictureは、解像度に依存しません。つまり、QPictureは、異なるデバイス(例えば、svg、pdf、ps、プリンタ、スクリーン)で同じように表示することができます。これは例えば、WYSIWYG印刷プレビューに必要です。QPictureはデフォルトのシステムdpiで動作し、ウィンドウシステムによる解像度の違いに合わせてペインターを拡大縮小します。

画像を記録する方法の例:

QPicture picture;
QPainter painter;
painter.begin(&picture);           // paint in picture
painter.drawEllipse(10,20, 80,70); // draw an ellipse
painter.end();                     // painting done
picture.save("drawing.pic");       // save picture

ペインターコマンドのリストは、QPainter::begin() 関数を呼び出すたびにリセットされることに注意してください。

絵を再生する例:

QPicture picture;
picture.load("drawing.pic");           // load picture
QPainter painter;
painter.begin(&myImage);               // paint in myImage
painter.drawPicture(0, 0, picture);    // draw the picture at (0,0)
painter.end();                         // painting done

play() を使っても絵を描くことができる。例えば、size()、isNull()、boundingRect() のように、絵に関する基本的なデータがいくつか用意されている。

QMovieも参照のこと

メンバ関数ドキュメント

[explicit] QPicture::QPicture(int formatVersion = -1)

空の画像を構築する。

formatVersion パラメータは、以前のバージョンの Qt でコンパイルされたアプリケーションで読み込める QPicture を作成するために使用できます。

デフォルトのformatVersionは、現在のリリースを示す-1であることに注意してください。つまり、Qt 4.0のformatVersion 7は、デフォルトのformatVersion -1と同じです。

Qt 4.0では、以前のバージョンのQtで生成されたピクチャの読み込みはサポートされていません。

QPicture::QPicture(const QPicture &pic)

pic のコピーを構築します。

このコンストラクタは暗黙の共有のおかげで高速です。

[virtual noexcept] QPicture::~QPicture()

ピクチャを破棄します。

QRect QPicture::boundingRect() const

ピクチャの外接矩形を返すか、ピクチャにデータがない場合は無効な矩形を返します。

setBoundingRect()も参照してください

const char *QPicture::data() const

ピクチャデータへのポインタを返します。このポインタは、次にこのピクチャに対して nononst 関数が呼び出されるまで有効です。ピクチャにデータがない場合、返されるポインタは 0 です。

setData()、size()、isNull()も参照

bool QPicture::isNull() const

ピクチャにデータがない場合はtrue を返し、そうでない場合は false を返す。

bool QPicture::load(const QString &fileName)

fileName で指定されたファイルから画像を読み込み、成功した場合は true を返し、失敗した場合は画像を無効にしてfalse を返す。

save()も参照

bool QPicture::load(QIODevice *dev)

これはオーバーロードされた関数です。

dev は、読み込みに使用するデバイスです。

bool QPicture::play(QPainter *painter)

painter を使って画像を再生し、成功すればtrue を返し、そうでなければfalse を返す。

この関数は、(x, y) = (0, 0) でQPainter::drawPicture() と全く同じことを行う。

注意: この関数では、ペインターの状態は保存されません。

bool QPicture::save(const QString &fileName)

fileName で指定されたファイルに画像を保存し、成功すれば true を返し、失敗すればfalse を返す。

load()も参照

bool QPicture::save(QIODevice *dev)

これはオーバーロードされた関数です。

dev は、保存に使用するデバイスです。

void QPicture::setBoundingRect(const QRect &r)

画像の外接矩形をr に設定します。 自動計算された値が上書きされます。

boundingRect()も参照してください

[virtual] void QPicture::setData(const char *data, uint size)

data およびsize から直接ピクチャデータを設定します。この関数は入力データをコピーします。

data() およびsize() も参照

uint QPicture::size() const

画像データのサイズを返します。

data()も参照

[noexcept] void QPicture::swap(QPicture &other)

画像other をこの画像と入れ替えます。この操作は非常に高速で、失敗することはありません。

[noexcept] QPicture &QPicture::operator=(QPicture &&other)

Move-このQPicture インスタンスにother を割り当てます。

QPicture &QPicture::operator=(const QPicture &p)

ピクチャp をこのピクチャに割り当て、このピクチャへの参照を返します。

関連する非メンバー

QDataStream &operator<<(QDataStream &s, const QPicture &r)

ピクチャr をストリームs に書き込み、ストリームへの参照を返します。

QDataStream &operator>>(QDataStream &s, QPicture &r)

ストリームs からピクチャr にピクチャを読み込み、ストリームへの参照を返します。

©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。