GetPath

GetPath

VB声明

Declare Function GetPath Lib "gdi32" Alias "GetPath" (ByVal hdc As Long, lpPoint As POINTAPI, lpTypes As Byte, ByVal nSize As Long) As Long

说明

取得对当前路径进行定义的一系列数据

返回值

Long,载入数组的点数(如nSize设为零,则返回要求的条目数量)。如数组空间不够大,不足以容下所有的点,就返回-1。会将GetLastError设置为下述值之一:ERROR_CAN_NOT_COMPLETE,ERROR_INVALID_PARAMETER,ERROR_BUFFER_OVERFLOW

参数表

参数

类型及说明

hdc

Long,包含了路径的设备场景

lpPoint

POINTAPI,一个POINTAPI结构数组中的第一个元素。这个数组为路径中的每个段(segment)都要载入坐标数据。具体的信息是采用逻辑坐标提供的

lpTypes

Byte,一个字节数组中的第一个元素;这个数组定义了与每个坐标对应的操作类型。其中包括:

PT_MOVETO

坐标是一个新子路径的起始处

PT_LINETO

坐标是来自前一个坐标的一条线的终点

PT_BEZIERTO

肯定以三点一组的形式出现。头两个点是控制点,第三个是贝塞尔(Bezier)曲线的终点。PT_LINETO和PT_BEZIERTO也许能与PT_CLOSEFIGURE联合使用。在这种情况下,它代表一幅图象的最后一个点。将这个点与子路径的第一个连接起来后,路径就会封闭

nSize

Long,lpPoint和lpTypes数组的大小。如设为零,表示取得要求的数组大小

注解

尽管路径信息是在设备坐标的内部保存的,这个函数的所有坐标都是用逻辑坐标返回的。具体坐标取决于当前的坐标系统及转换设置。可用FlattenPath函数强迫路径中的所有点都成为PT_MOVETO和PT_LINETO类型

Top