Qt 的QPainter::drawImage(怎么绘制图片)
时间: 2024-03-27 19:37:30 浏览: 343
要使用Qt的QPainter绘制图片,可以使用QPainter的drawImage()函数。该函数有多个重载形式,其中最常用的形式如下:
```
void QPainter::drawImage(const QRectF &targetRect, const QImage &image, const QRectF &sourceRect = QRectF(), Qt::ImageConversionFlags flags = Qt::AutoColor)
```
其中,`targetRect`指定了要绘制的目标矩形区域,`image`是要绘制的图片,`sourceRect`指定了要绘制的图片区域,`flags`指定了绘制时的一些选项。
例如,以下代码可以在QWidget部件的paintEvent()函数中绘制一张图片:
```cpp
void MyWidget::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
QImage image(":/path/to/image.png");
QRectF targetRect(20, 20, 100, 100); // 目标矩形区域
QRectF sourceRect(0, 0, image.width(), image.height()); // 图片区域
painter.drawImage(targetRect, image, sourceRect);
}
```
以上代码中,`QImage`表示要绘制的图片,`targetRect`表示要绘制的目标矩形区域,`sourceRect`表示要绘制的图片区域,最后调用`drawImage()`函数绘制图片即可。
阅读全文