图片绕着中心点旋转

图片绕着中心点旋转的思想是,把图片移到客户区的是左上角,然后旋转爱某个角度好,再重置Graphics即可。

// 图片的中心放到原点处

Point ptPos(-(m_pWaitPng->GetWidth() / 2), -(m_pWaitPng->GetWidth() / 2));
Point ptWait[] = {ptPos,
Point(ptPos.X + m_pWaitPng->GetWidth(), ptPos.Y),
Point(ptPos.X, m_pWaitPng->GetHeight() + ptPos.Y)};

graph.RotateTransform(m_nPngAngle, MatrixOrderAppend);

// 364 294是图片左上角的位置,就是我们要显示图片的位置,可以根据自己的需求换成你自己的数值
graph.TranslateTransform(364, 294, MatrixOrderAppend);
graph.DrawImage(m_pWaitPng, ptWait, 3);
graph.ResetTransform(); 

其中m_pWaitPng是在头文件中定义的,Image类是Gdi+中的类, graph是Graphics对象.

Image *m_pWaitPng;

 

posted @ 2016-07-03 11:40  下雨的傍晚  阅读(1178)  评论(0编辑  收藏  举报