4
我想从QImage创建QByteArray,但尽管我尝试了很多变化,我无法处理它。如何将QImage转换为QByteArray?
什么我做的是:
QImage img_enrll; // <--- There is an image coming from another function.
QByteArray arr((char*)img_enrll.bits(),img_enrll.byteCount()); // <-- convertion but I am not sure it is true or not.
funcCheck((unsigned char*)arr.data(), arr.size(), 0, &sam, 1, &n);
virtual Error funcCheck (const uint8_t src[],
size_t src_len,
size_t tout_ms,
IRawSample* dst[],
size_t dst_len,
size_t* dst_n)
但是错误代码是返回无效数据。我认为将QImage转换为QByteArray是错误的。请你能帮助我如何转换为QByteArray?
呵呵,谢谢,我之前也试过这个解决方案。但QDataStream让我很好的想法如何解决这个问题。而且它工作正常:) – goGud 2014-12-07 14:43:18
嗯,我已经看过Qt文档中的这个解决方案,但在我的情况下,缓冲区仍然是空的。即,'Q_ASSERT(buffer.data()。size()> 0);'抛出一个异常。 当然,我检查了QImage是有效的:我已经从文件中加载它,转换为QPixmap并将其显示在QLabel中。 – 2017-01-26 13:15:04