[使用GDIPlus剪切和缩放图片]

场景:

1. 缩放图片,不用多说,就是需要缩略图和画在界面上这类。

2. 剪切,不用多说,就是剪切一部分图片用于绘制控件背景之类.

3. wxWidget的wxImage都是自带这些功能的直接方法的.

Gdiplus::Bitmap* CutImage(Gdiplus::Image* source,int x,int y,int width,int height){Gdiplus::Rect zoomRect(0, 0, width,height);Gdiplus::Bitmap* pImageScale_ = new Gdiplus::Bitmap(zoomRect.Width, zoomRect.Height);Gdiplus::RectF rf(x,y,width,height);Gdiplus::TextureBrush brush(source,rf);Gdiplus::Graphics graphicsScale(pImageScale_);graphicsScale.FillRectangle(&brush, zoomRect);return pImageScale_;}Gdiplus::Image* ScaleImage(Gdiplus::Image* source,int width,int height){Gdiplus::Rect zoomRect(0, 0, width,height);Gdiplus::Bitmap* pImageScale = new Gdiplus::Bitmap(zoomRect.Width, zoomRect.Height);Gdiplus::Graphics graphicsScale(pImageScale);Gdiplus::TextureBrush brush(source);graphicsScale.ScaleTransform((Gdiplus::REAL)((Gdiplus::REAL)zoomRect.Width / (Gdiplus::REAL)source->GetWidth()),(Gdiplus::REAL)((Gdiplus::REAL)zoomRect.Height / (Gdiplus::REAL)source->GetHeight()));graphicsScale.FillRectangle(&brush, zoomRect);return pImageScale;}

,美好的生命应该充满期待惊喜和感激

[使用GDIPlus剪切和缩放图片]

相关文章:

你感兴趣的文章:

标签云: