【发布时间】:2012-03-22 11:30:54
【问题描述】:
我一直在努力解决具有非零窗口原点的窗口的剪切问题,因为我没有意识到 SelectClipRgn 所需的设备单位。
所以鉴于我已经确定了视口原点和窗口原点如下......
POINT VP_Org, WN_Org;
GetViewportOrgEx (dc, VP_Org);
GerWindowOrgEx (dc, WM_Org);
我在逻辑坐标中有一个剪切区域 R,如何将 R 转换为设备单位以用于定义剪切区域?
换句话说,我如何转换 R 以便以下工作。
RECT R;
ClipRgn = CreateRectRgn (R.left, R.top, R.right, R.bottom)
SelectClipRgn (dc, ClipRgn)
我知道它看起来像
R.top = R.top - WN_Org.y +- VP_Org.y;
来自实验,但不知道要为视口使用什么标志。
【问题讨论】: