我目前有关于图像的以下详细信息
int nBufSize ; //contains the buffer size
void* lpBmpBuf; //The pointer to the first byte of the bitmap buffer
如何从中获取QPixmap?
这是我到目前为止所做的事情
QByteArray b((char*)lpBmpBuf,nBufSize);
bool t = pix.loadFromData(b, 0, Qt::AutoColor);
但在这种情况下,t是假的。有什么建议吗?
答案 0 :(得分:4)
将位图缓冲区复制到字节数组中,因为你也有长度,然后:
QPixmap::loadFromData(&data, 0, Qt::AutoColor);
数据是我示例中的QByteArray
。
此外,如果您知道文件的扩展名/类型,您可以在第二个参数中指定它:
loadFromData(&data, "BMP");