gpt4 book ai didi

c++ - 加载 QPixmap 数据的更好方法

转载 作者:太空狗 更新时间:2023-10-29 21:48:15 25 4
gpt4 key购买 nike

更好的方法(不用 QImage)?:

QImage image(width, height, QImage::Format_RGB888);
memcpy(image.bits(), m_frameRGB->data[0], height * width * 3);
QPixmap pixmap = QPixmap::fromImage(image);

我看不出有任何理由将 QImage 用作中间缓冲区,但是 QPixmap::loadFromData 不使用此上下文加载数据:

pixmap.loadFromData(m_frameRGB->data[0], height * width * 3); // Need pixmap resize?

最佳答案

文档说:“如果未指定格式(这是默认格式),加载程序会探测文件的 header 以猜测文件格式”。您只需提供指向原始图像字节的指针,但您必须在缓冲区的开头提供一个标题,例如对于未压缩的 PPM 格式。

编辑:您还可以测试 Roku 的建议,使用将图像数据作为参数的 QImage 构造函数,但请参阅文档中的注释:“缓冲区必须在 QImage 的整个生命周期内保持有效。”

关于c++ - 加载 QPixmap 数据的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11210884/

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