EngStrokePath 函数 (winddi.h)

EngStrokePath 函数请求 GDI 笔划指定路径。

语法

ENGAPI BOOL EngStrokePath(
       SURFOBJ   *pso,
       PATHOBJ   *ppo,
       CLIPOBJ   *pco,
       XFORMOBJ  *pxo,
       BRUSHOBJ  *pbo,
       POINTL    *pptlBrushOrg,
  [in] LINEATTRS *plineattrs,
  [in] MIX       mix
);

参数

pso

指向描述要绘制的图面的 SURFOBJ 结构的指针。

ppo

指向 PATHOBJ 结构的指针。 PATHOBJ_Xxx 服务例程用于枚举构成路径的线条、贝塞尔曲线和其他数据。 这指示要绘制的内容。

pco

指向 CLIPOBJ 结构的指针。 CLIPOBJ_Xxx 服务例程用于将剪辑区域枚举为一组矩形。 (可选)路径中的所有行都可以通过此 CLIPOBJ 预先枚举。 这意味着驱动程序可以为其完成所有行剪裁计算。

pxo

指向 XFORMOBJ 结构的指针。 仅当绘制几何宽线时,才需要此项。 它指定将世界坐标转换为设备坐标的转换。 这是必需的,因为路径以设备坐标提供,但几何宽线实际上在世界坐标中加宽。

驱动程序可以使用 XFORMOBJ_Xxx 服务例程来确定转换。

pbo

指向 BRUSHOBJ 结构的指针,该结构指定要在绘制路径时使用的画笔。

pptlBrushOrg

指向 POINTL 结构的指针,该结构包含用于对齐设备上的画笔图案的画笔原点。

[in] plineattrs

指向 LINEATTRS 结构的指针。 请注意,如果设置了线条样式,则必须将此结构的 elStyleState 成员更新为此函数的一部分。 另请注意,如果要绘制单像素宽度的修饰线,则必须更新同一结构的 ptlLastPel 成员。

[in] mix

指定如何将画笔与目标组合在一起。

返回值

如果 GDI 笔划路径,则返回值为 TRUE 。 如果驱动程序应笔划路径,则返回值为 FALSE,并且不会记录任何错误。 如果 GDI 遇到错误,则返回值为DDI_ERROR,并记录错误代码。

注解

混合模式定义传入模式应如何与设备图面上已有的数据混合。 MIX 数据类型由打包到单个 ULONG 中的两个 ROP2 值组成。 低序字节定义前台光栅操作;下一个字节定义背景光栅操作。 有关光栅操作代码的详细信息,请参阅Microsoft Windows SDK文档。

要求

   
最低受支持的客户端 适用于 Windows 2000 及更高版本的 Windows 操作系统。
目标平台 通用
标头 winddi.h (包括 Winddi.h)
Library Win32k.lib
DLL Win32k.sys

另请参阅

CLIPOBJ

DrvStrokePath

LINEATTRS

PATHOBJ

SURFOBJ

XFORMOBJ