设为首页收藏本站 |天气与日历| 2025-04-20 星期日 06:22:00 乙巳(蛇)年 三月廿三 卯时 谷雨
     
切换到窄版

私人站点

 找回密码
 立即注册
搜索
查看: 107|回复: 0

绘图设备

[复制链接]

954

主题

954

帖子

3875

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3875
发表于 2022-2-9 21:32:21 | 显示全部楼层 |阅读模式
1 绘图设备
1.1 QPixmap       
1.1.1 对不同的平台显示做了优化
1.2 QImage
1.2.1 可以对像素级进行访问
1.3 QPicture
1.3.1 记录和重新绘图指令       

[C++] 纯文本查看 复制代码
    //QPixmap做绘图设备  对不同平台做了显示的优化
//    QPixmap pix(300,300);

//    pix.fill(Qt::white);

//    QPainter painter(&pix);

//    painter.setPen( QPen(Qt::red) );
//    painter.drawEllipse(QPoint(150,150) , 100,100);

//    pix.save("E:\\pix.png");

    //QImage做绘图设备   不同平台下显示效果一样,可以对像素的访问做了优化

//    QImage img(300,300,QImage::Format_RGB32);

//    img.fill(Qt::white);

//    QPainter painter(&img);
//    painter.setPen( QPen(Qt::green) );
//    painter.drawEllipse(QPoint(150,150) , 100,100);
//    img.save("E:\\img.png");


    //QPicture  记录和重现绘图指令
    QPicture pic;
    QPainter painter;
    painter.begin(&pic);

    painter.setPen( QPen(Qt::blue) );
    painter.drawEllipse(QPoint(150,150) , 100,100);
    painter.end();

    pic.save("E:\\pic.zt");

}

void Widget::paintEvent(QPaintEvent *)
{
    QImage img;
    img.load(":/Image/Luffy.png");

    QPainter painter(this);


//    //修改像素点
//    for(int i  = 100;i< 150;i++)
//    {
//        for(int j = 100;j< 150;j++)
//        {
//           QRgb value  = qRgb(255,0,0);
//           img.setPixel(i,j,value);

//        }
//    }

//    painter.drawImage(0,0,img);

    //重现QPicture命令
    QPicture pic;
    pic.load("E:\\pic.zt");
    painter.drawPicture(0,0,pic);

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|编程站点 ( 冀ICP备2023028127号-2 )|友链申请|

GMT+8, 2025-4-20 06:22 , Processed in 0.095971 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表