gpt4 book ai didi

c++ - std::vector 到 QPixmap

转载 作者:太空宇宙 更新时间:2023-11-04 11:26:43 24 4
gpt4 key购买 nike

我可以发送和接收 QPixmap通过 QByteArray :

QPixmap pixmap1;
QByteArray rawPixels;
QBuffer buffer(&rawPixels);
buffer.open(QIODevice::WriteOnly);
pixmap1.save(&buffer, "PNG");

QPixmap pixmap2;
pixmap2.loadFromData(rawPixels,"PNG");

但我必须使用 std::vector<unsigned char>发送我的像素图:

std::vector<unsigned char> vector;
int size = rawPixels.size();
char* temp = (char*) rawPixels.constData();
vector.resize(size);
for(int index = 0; index < size; index++)
{
vector.push_back(temp[index]);
}

有没有简单的方法来获得 QPixmap来自std::vector<unsigned char>

最佳答案

您可以使用 loadFromData使用无符号字符数组

bool QPixmap::loadFromData ( const uchar * data, uint len, const char * format = 0,
Qt::ImageConversionFlags flags = Qt::AutoColor )

使用vector.data()获取连续的底层数据。

关于c++ - std::vector<unsigned char> 到 QPixmap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26400030/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com