【问题标题】:Fast convert from Byte Array to image, that QT can show in form从字节数组快速转换为图像,QT 可以在表格中显示
【发布时间】:2016-10-13 15:20:59
【问题描述】:

所以我有一个以太网摄像头。在 SDK 中有事件 OnNewFrame(int lPicFormat, int lWidth, int lHeight, int lDataSize, QVariant &pvData),其中 pvData 是有趣的图像字节数组。所以,我需要将此数组转换为 QT 理解格式并以形式显示(例如在标签中)。有人可以帮帮我吗?

【问题讨论】:

  • 看看 QPixmap::loadFromData 像这样stackoverflow.com/questions/6826683/…
  • @duDE 函数 QPixmap::loadFromData 返回 false。我认为,这是因为我的 pvData 数组没有任何标题。它是通常的位/像素数组。

标签: c++ arrays image qt


【解决方案1】:

将数组显示为标签

QByteArray mByteArray;
QPixmap mPixmap;
mPixmap.loadFromData(mByteArray,"JPG");
ui->label->setPixmap(mPixmap);

并检查mpixmap.loadFromData(data,"JPG"); 返回的内容。如果它返回 false 那么它无法加载您的数据。 如果要将 QByteArray 显示为图像,请查看: How to display a QByteArray as an Image

【讨论】:

  • 我的数组中没有标题。是的,我想显示 QByteArray。您的链接中没有主题。
【解决方案2】:

QImage提供了几个构造函数看http://doc.qt.io/qt-4.8/qimage.html#QImage-6。 然后可以使用QPixmap::fromImage方法http://doc.qt.io/qt-4.8/qpixmap.html#fromImage将图像转换为QPixmap并设置为QLabel

【讨论】:

    猜你喜欢
    • 2013-08-07
    • 1970-01-01
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-25
    • 1970-01-01
    相关资源
    最近更新 更多