19,468
社区成员
发帖
与我相关
我的任务
分享
Gdiplus::Rect rc(0,0,100,100);
Gdiplus::LinearGradientBrush brush(rc,RGB(255,0,0,255),RGB
(255,255,0,0),LinearGradientModeVertical);
Gdiplus::REAL pos[] = {0.0f,0.3f,0.7f,1.0f};
Gdiplus::Color cor[] = {Gdiplus::Color(255,0,0,255),Gdiplus::Color(255,0,255,0),
Gdiplus::Color(255,255,255,0),Gdiplus::Color(255,255,0,0)};
brush.SetInterpolation(&cor[0],&pos[0],4);
CDC *pDC = GetDC();
Gdiplus::Graphics draw = Gdiplus::Graphics::FromHDC(pDC->GetSafeHdc();
draw.FillRectangle(&brush,rc);
ReleaseDC(pDC);
Matrix mtx( 1,0.0F,0.0F,-1,pt.x,pt.y ); // pt为Gdiplus::Rect rc(0,0,100,100)的中心点
brush.SetTransform( &mtx );