1

我需要使用从 c++ 例程传递到 QML 的 QByteArray 在 QML 页面中显示 png 图像。我该怎么做?请帮我解决这个问题..

4

1 回答 1

0

假设您的数据位于QByteArraynameddata中,这应该有效:

QImage image;
image.loadFromData(data);
const QImage swappedImage = image.rgbSwapped();
const bb::ImageData imageData = bb::ImageData::fromPixels(swappedImage.bits(), bb::PixelFormat::RGBA_Premultiplied, swappedImage.width(), swappedImage.height(), swappedImage.bytesPerLine());

_image = bb::cascades::Image(imageData);

您现在可以_imageImageViewQML 代码中显示。为此,您必须将其转换为QVariant: QVariant::fromValue(_image);。完成后,您可以将其显示在任何ImageView. 我假设你有一个名为的对象feed,它有一个image属性 ( QVariant):

ImageView {
    image: feed.image
}
于 2013-07-23T09:20:52.970 回答