您的位置:首页 > 其它

GDI+ 绘图速度与 CImage 速度比较

2008-12-11 21:15 225 查看
GDI+:

//使用Gdiplus image
DWORD iStart=GetTickCount();
Gdiplus::Bitmap bmp(_T("G://和动力//选择界面效果序列图//DJSelectedOut//一号舞台.png"));

CPaintDC dc(this);
Gdiplus::Graphics gs(dc.m_hDC);
for (int i=0;i<100;i++)
{
gs.DrawImage(&bmp,0,0);

}
DWORD iEnd=GetTickCount();

TCHAR cc[30];
_stprintf(cc,_T("Bitmap:%d"),iEnd-iStart);

MessageBox(cc);
测试出费540上下;
CImage:
DWORD iStart=GetTickCount();
CImage img;img.Load(_T("G://和动力//选择界面效果序列图//DJSelectedOut//一号舞台.png"));

CPaintDC dc(this);

for (int i=0;i<100;i++)
{
img.Draw(dc.m_hDC ,0,0);
}

DWORD iEnd=GetTickCount();

TCHAR cc[30];
_stprintf(cc,_T("CImage:%d"),iEnd-iStart);

MessageBox(cc);
测试出:31,32。
将数量都增大到1000后,GDI+明显好几秒!而CImage几乎不变,再增大至10000,才达到103,104.
如此,GDI+绘图效率连CImage 1%都达不到!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: