StretchDIBits(hDC, 0, 0, img.cols,//drect.right, //显示窗口宽度 img.rows,//drect.bottom, //显示窗口高度 0, 0, img.cols, //图像宽度 img.rows, //图像高度 img.data, bitMapinfo, DIB_RGB_COLORS, SRCCOPY );
假定位图头和调色板完全正确。显示错误的原因:
位图每行数据都4字节对齐,OpenCV的cv::Mat没有这个对齐。
所以数据会错位。
StretchDIBits(hDC, 0, 0, img.cols,//drect.right, //显示窗口宽度 img.rows,//drect.bottom, //显示窗口高度 0, 0, img.cols, //图像宽度 img.rows, //图像高度 img.data, bitMapinfo, DIB_RGB_COLORS, SRCCOPY );
假定位图头和调色板完全正确。显示错误的原因:
位图每行数据都4字节对齐,OpenCV的cv::Mat没有这个对齐。
所以数据会错位。