StrechDIBits() 如何提高绘图速度
求教大神,本人使用MFC自己写了一个picture控件,使用GDI的 StrechDIBits()函数绘图,在画大图时速度很慢,3亿像素的8位bmp图,画一次要2000 -2400毫秒也就是2秒以上了。
但是用公司的库绘图只要6-20毫秒就能完成,我想问问有什么解决办法吗,是我的问题还是函数本身的问题,或者有什么优化的方法吗。
SYSTEMTIME TimeStart, TimeEnd;
GetLocalTime(×tart);//起始时间
StretchDIBits(pDC->GetSafeHdc(), 0, 0, rcRect.Width(), rcRect.Height(),
dImageXStartPos, dImageYStartPos,
(int)(GetBitMapInfoHeader().biWidth / m_dZoomWidth), (int)(GetBitMapInfoHeader().biHeight /
m_dZoomHeight),
m_pcBufImage, (BITMAPINFO*)m_pBitmapInfo_8, DIB_RGB_COLORS, SRCCOPY);
GetLocalTime(&TimeEnd);//结束时间
float fDetaTime = TimeEnd.wMilliseconds - TimeStart.wMilliseconds + 1000 * (TimeEnd.wSecond - TimeStart.wSecond);