QT的绘图设备

QT的绘图设备分为:QPixmap、QBixmap、QImage、QPicture

一、QPixmap

	#include <QPainter>
 	//QPixmap作绘图设备,对不同平台做了显示优化
    QPixmap pixmap(300,300);
    pixmap.fill(Qt::white);             //设置背景颜色为白色
    QPainter painter1(&pixmap);
    painter1.setPen(QPen(Qt::green));        //设置画笔,画笔颜色为绿色
    painter1.drawEllipse(QPoint(150,150),50,50);         //画圆
    pixmap.save("C:\\Users\\Admin\\Desktop\\ellipse.png");          //保存路径

二、QImage

	#include <QPainter>
	//QImage作绘图设备,对像素级的访问作了优化
    QImage image(300,300,QImage::Format_RGB32);             //指定长、宽、颜色格式
    image.fill(Qt::white);              //设置背景颜色为白色
    QPainter painter2(&image);
    painter2.setPen(QPen(Qt::blue));            //设置画笔,画笔颜色为蓝色
    painter2.drawEllipse(QPoint(150,150),50,50);         //画圆
    image.save("C:\\Users\\Admin\\Desktop\\image.png");         //保存路径
void Widget::paintEvent(QPaintEvent *event)
{
    QPainter painter3(this);
    QImage img;
    img.load(":/prefix1/image/1.png");

    for (int i=0;i<100;i++)
    {
        for (int j=0;j<100;j++)
        {
            QRgb rgbRead = img.pixel(i,j);          //读取某一点的RGB值
            QRgb rgb = qRgb(0,255,0);
            img.setPixel(i,j,rgb);
        }
    }

    painter3.drawImage(0,0,img);
}

三、QPicture

	#include <QPicture>
 	//QPicture作绘图设备,记录和重现画家的操作
    QPicture picture;
    QPainter painter3;
    painter3.begin(&picture);
    painter3.setPen(QPen(Qt::blue));            //设置画笔,画笔颜色为蓝色
    painter3.drawEllipse(QPoint(150,150),50,50);         //画圆
    painter3.end();
    picture.save("C:\\Users\\Admin\\Desktop\\picture.txt");

	void Widget::paintEvent(QPaintEvent *event)
	{
    QPainter painter3(this);
    QPicture picture;
    picture.load("C:\\Users\\Admin\\Desktop\\picture.txt");
    painter3.drawPicture(0,0,picture);
	}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值