void MainWindow::paintEvent(QPaintEvent *)
{
QFile data("test.txt");
data.open(QIODevice::WriteOnly)|QFile::Truncate;
QTextStream out(&data);
QByteArray bytes;
bytes.clear();
QPainter painter(this);
QImage image=QImage(16,16,QImage::Format_RGB16);
image.load("images/bruce.jpg");
painter.drawImage(0, 0, image,0,0,16,16);
for(int j=0;j<16;j++)
{
const uchar* pLineBits = image.scanLine(j);
for(int i=0; i<64;i++)
{
uchar ch = *(pLineBits+i);
out<<ch;
out<<" ";
bytes.append(ch);
}
}
data.close();
}
我在一副16*16的image上加载了一幅小图,格式是Format_RGB16的,然后用scanline取得RGB的值,但取不到RGB565的16位的那种格式,Format_RGB16里不是565的吗,加起来不就是两字的节吗,但我取出是四字节的数据,是32位的RGB,难道就只能取32位的吗,不能取16位的吗,向高手求助