我有一个通过网络发送图像的程序。我手动创建像素(使用QRgb
类)并将其插入QDataStream
。当每像素有16或32位时(我可以插入quint16
或quint32
),这很容易,但在RGB888(每像素24位)中,我必须使用三个quint8
个变量。但我不确定QDataStream
具有的字节顺序:
// output is QDataStream object
output.setByteOrder(QDataStream::BigEndian);
我应该按顺序插入以便以后正确读取此流吗?
// red, green and blue are quints8
output << blue;
output << green;
output << red;
编辑:我知道当我仅使用BigEndian
时设置quint8
并不重要,但我想按照这样的顺序设置颜色,就像Qt使字节求助的情况一样({ {1}}和quint32
)。