• 5598阅读
  • 4回复

请教:QImage图像如何转换为unsigned char*格式 [复制链接]

上一主题 下一主题
离线always2009
 

只看楼主 倒序阅读 楼主  发表于: 2018-05-25
rt,请大佬告知。
在线uidab

只看该作者 1楼 发表于: 2018-05-25
uchar *QImage::bits()
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线always2009

只看该作者 2楼 发表于: 2018-05-27
使用这个函数是不是只做浅拷贝,如果我将函数栈上的QImage变量使用此函数赋值给unchar指针,数据会不会拷贝?
在线uidab

只看该作者 3楼 发表于: 2018-05-28
自己memcpy
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线jhonconal

只看该作者 4楼 发表于: 2018-07-16
QByteArray MainDialog::QIcon2QByteArray(QIcon icon)
{
    if(icon.isNull())
        return NULL;
    QList<QSize>sizes = icon.availableSizes();
    int maxinum = sizes[0].width();
    for(int i=1;i<sizes.size();++i)
    {
        maxinum = qMax(maxinum,sizes.width());
    }
    QPixmap pixmap = icon.pixmap(icon.actualSize(QSize(maxinum,maxinum)));//QIcon 转QPixmap
    //    QPixmap pixmap = icon.pixmap(QSize(32,32));//QIcon 转QPixmap
    QByteArray byteArray;
    //    //方法一:
    //    QDataStream ds(&byteArray,QIODevice::WriteOnly);
    //    ds<<pixmap;
    //方法二:
    QBuffer buffer(&byteArray);
    buffer.open(QIODevice::WriteOnly);
    pixmap.save(&buffer,"PNG",20);
    return byteArray;
}
快速回复
限100 字节
 
上一个 下一个