小甲鱼 发表于 2015-9-8 16:50:42

SetViewportOrgEx

函数功能:

SetViewportOrgEx 函数指定映射到窗口原点 (0, 0) 的设备原点的坐标。


API 函数原型:

BOOL SetViewportOrgEx(
_In_HDC   hdc,
_In_int   X,
_In_int   Y,
_Out_ LPPOINT lpPoint
);

参数解析:


参数 含义
hdc 指定设备环境句柄
X 新的视口原点的 X 坐标,设备单位
Y 新的视口原点的 Y 坐标,设备单位
lpPoint 1. 指向一个 POINT 结构的指针,用于存放原先的视口原点(设备坐标)
2. 如果该值为 NULL,则表示忽略此参数


返回值:

1. 如果函数调用成功,返回值是非 0;

2. 如果函数调用失败,返回值是 0。


备注:

1. SetViewportOrgEx 函数(以及 SetViewportExtEx 和 SetWindowExtEx 函数)用于定义从逻辑坐标空间(窗口)到设备坐标空间(视口)的映射。SetViewportOrgEx 函数指定哪个设备原点将映射到逻辑原点 (0, 0)。它将影响轴偏移,即映射后逻辑原点 (0, 0) 将不再指向客户区左上角位置。

2. SetWindowOrgEx 函数与此相反,用于指定哪个逻辑原点将映射到设备原点 (0, 0)。通常你可以任意使用其中一个,但不建议两个同时使用。但是不管你使用了 SetViewportOrgEx 函数还是 SetWindowOrgEx 函数,设备原点 (0, 0) 永远在左上角。

3. 视口(设备坐标空间)和窗口(逻辑坐标空间)坐标转换公式:







【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。


WinSDK

hustjinghu 发表于 2016-11-11 10:37:06

SetViewportOrg(hdc,x,y,NULL)函数将逻辑原点(0,0)显示在视口的(x,y)
SetWindowOrg(hdc,x,y,NULL)函数将逻辑坐标点(x,y)显示在视口的原点(0,0),也就是说把逻辑原点(0,0)显示在视口的(-x,-y)
页: [1]
查看完整版本: SetViewportOrgEx