几个GDI函数

来源:互联网 发布:小游戏网站源码 编辑:程序博客网 时间:2024/05/19 13:20

RoundRect (hdc, xLeft, yTop, xRight, yBottom, xCornerEllipse, yCornerEllipse) ;

Windows使用一个小椭圆来画圆角,这个椭圆的宽为xCornerEllipse,高为yCornerEllipse。可以想象这个小椭圆分为了四个部分,一个象限一个,每个刚好用在矩形的一个角上。xCornerEllipse和yCornerEllipse的值越大,角就越明显。如果xCornerEllipse等于xLeft与xRight的差,且yCornerEllipse等于yTop与yBottom的差,那么RoundRect函数将画出一个椭圆。

在绘制图5-8所示的圆角矩形时,用了下面的公式来计算角上椭圆的尺寸。

xCornerEllipse = (xRight - xLeft) / 4 ;        yCornerEllipse = (yBottom- yTop) / 4 ;        

这是一种简单的方法,但是结果看起来有点不对劲,因为角的弯曲部分在矩形长的一边要大些。要矫正这一问题,您可以让xCornerEllipse与yCornerEllipse的值相等。

Arc、Chord和Pie函数都只要相同的参数:

Arc(hdc, xLeft, yTop, xRight, yBottom, xStart, yStart, xEnd, yEnd) ; //弧        Chord(hdc, xLeft, yTop, xRight, yBottom, xStart, yStart, xEnd, yEnd); //弦        Pie(hdc, xLeft, yTop, xRight, yBottom, xStart, yStart, xEnd, yEnd); //扇形
所有xStart, yStart, xEnd, yEnd都是表示中心点和坐标连成的直线和椭圆的交点。



原创粉丝点击