关闭

windows 中的映射模式

625人阅读 评论(0) 收藏 举报

1、映射模式的设置

可以通过SetMapMode 和GetMapMode 两个函数来调用;

 int SetMapMode(
  HDC
hdc,        // handle of device context
  int fnMapMode   // new mapping mode  映射模式
);

设置当前的设备环境的映射模式
int GetMapMode(
  HDC
hdc   // handle of device context
);
获取当前的设备环境的映射模式

窗口是对应逻辑坐标系上程序员设定的一个区域,视口是对应于实际输出设备上程序员设定的一个区域。

窗口区域的定义由SetWindowExtEx 函数完成

BOOL SetWindowExtEx(
  HDC
hdc,       // handle of device context
  int nXExtent// new horizontal window extent 为以逻辑单位表示的新窗口区域高度
  int nYExtent// new vertical window extent
  LPSIZE lpSize  // original window extent
);
视口区域的定义由SetViewportExtEx函数完成

BOOL SetViewportExtEx(
  HDC
hdc,       // handle of device context
  int nXExtent// new horizontal viewport extent 以物理设备单位表示的新视口区域高度
  int nYExtent// new vertical viewport extent
  LPSIZE lpSize  // original viewport extent
);
例如:

SetWindowExtEx(hdc,1,1,NULL);

SetViewportExtEx(hdc,10,10,NULL);

表示一个单位十个象素;Y轴向下,X轴向左

如果为SetWindowExtEx(hdc,-1,-1,NULL)则表示Y轴向上,X轴向右

视口的原点和窗口的原点可以通过SetWindowOrgEx和SetViewportOrtEx两个函数来设置

BOOL SetWindowOrgEx(
  HDC
hdc// handle of device context
  int X,    // new x-coordinate of window origin窗口
  int Y,    // new y-coordinate of window origin
  LPPOINT lpPoint
            // address of structure receiving original origin  保存原来的坐标POINT结构地址
);

BOOL SetViewportOrgEx(
  HDC
hdc// handle of device context
  int X,    // new x-coordinate of viewport origin视口
  int Y,    // new y-coordinate of viewport origin
  LPPOINT lpPoint
            // address of structure receiving original origin
);

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:119100次
    • 积分:2186
    • 等级:
    • 排名:第18386名
    • 原创:61篇
    • 转载:44篇
    • 译文:0篇
    • 评论:19条
    最新评论