我需要使用从 c++ 例程传递到 QML 的 QByteArray 在 QML 页面中显示 png 图像。我该怎么做?请帮我解决这个问题..
1094 次
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);
您现在可以_image在ImageViewQML 代码中显示。为此,您必须将其转换为QVariant: QVariant::fromValue(_image);。完成后,您可以将其显示在任何ImageView. 我假设你有一个名为的对象feed,它有一个image属性 ( QVariant):
ImageView {
image: feed.image
}
于 2013-07-23T09:20:52.970 回答