GraphicsPath::Outline 方法 (gdipluspath.h)
GraphicsPath::Outline 方法转换和平展此路径,然后转换此路径的数据点,使其仅表示路径的轮廓。
语法
Status Outline(
[in] const Matrix *matrix,
[in] REAL flatness
);
parameters
[in] matrix
类型: const Matrix*
可选。 指向指定转换的 Matrix 对象的指针。 如果此参数为 NULL,则不应用任何转换。 默认值为 NULL。
[in] flatness
类型: REAL
可选。 指定路径与其平展近似值之间的最大误差的实数。 减小平整度会增加近似值中的线段数。 默认值为 FlatnessDefault,它是 Gdiplusenums.h 中定义的常量。
返回值
类型: 状态
如果该方法成功,则返回 Ok,这是 Status 枚举的元素。
如果方法失败,它将返回 Status 枚举的其他元素之一。
注解
GraphicsPath 对象存储表示线条和曲线的数据点集合。 GraphicsPath::Outline 方法更改这些数据点,原始数据点将丢失。
示例
以下示例创建 一个 GraphicsPath 对象,并调用 GraphicsPath::AddClosedCurve 方法以向路径添加一条闭合的基数样条。 代码调用 GraphicsPath::Widen 方法来扩大路径,然后绘制路径。 接下来,代码调用路径的 Outline 方法。 该代码调用 Graphics 对象的 TranslateTransform 方法,以便后续调用 DrawPath 绘制的轮廓路径位于第一个路径的右侧。
VOID OutlineExample(HDC hdc)
{
Graphics graphics(hdc);
Pen bluePen(Color(255, 0, 0, 255));
Pen greenPen(Color(255, 0, 255, 0), 10);
PointF points[] = {
PointF(20.0f, 20.0f),
PointF(160.0f, 100.0f),
PointF(140.0f, 60.0f),
PointF(60.0f, 100.0f)};
GraphicsPath path;
path.AddClosedCurve(points, 4);
path.Widen(&greenPen);
graphics.DrawPath(&bluePen, &path);
path.Outline();
graphics.TranslateTransform(180.0f, 0.0f);
graphics.DrawPath(&bluePen, &path);
}
要求
最低受支持的客户端 | Windows XP、Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | gdipluspath.h (包括 Gdiplus.h) |
Library | Gdiplus.lib |
DLL | Gdiplus.dll |