SetMapMode
函数术语
函数功能描述:该函数设置指定设备环境的映射方式,映射方式定义了将逻辑单位转换为设备单位的度量单位,并定义了设备的X、Y轴的方向。
简介
函数原型:int SetMapMode(HDC hdc, int fnMapMode);
语法结构及要求
virtual int SetMapMode(int nMapMode);
要求:头文件位置:afxwin.h
参数
nMapMode
指定新映射的模式。它可以是以下任一值:
MM_ANISOTROPIC:逻辑单位转换成具有任意比例轴的任意单位,用SetWindowExtSetViewportExt函数可指定单位、方向和比例。
MM_HIENGLISH:每个逻辑单位转换为0.001英寸,X的正方向向右,Y的正方向向上。
MM_HIMETRIC:每个逻辑单位转换为0.01毫米,X正方向向右,Y的正方向向上。
MM_ISOTROPIC:逻辑单位转换成具有均等比例轴的任意单位,即沿X轴的一个单位等于沿Y轴的一个单位,用SetWindowExtSetViewportExt函数可以指定该轴的单位和方向。图形设备界面(GDI)需要进行调整,以保证X和Y的单位保持相同大小(当设置窗口范围时,视口将被调整以达到单位大小相同)。
MM_LOENGLISH:每个逻辑单位转换为0.01英寸,X正方向向右,Y正方向向上。
MM_LOMETRIC:每个逻辑单位转换为0.1毫米,X正方向向右,Y正方向向上。
MM_TEXT:每个逻辑单位转换为一个图素,X正方向向右,Y正方向向下。
MM_TWIPS;每个逻辑单位转换为打印点的1/20(即1/1440英寸),X正方向向右,Y方向向上。
返回值
如果函数调用成功,返回值指定先前的映射方式,否则,返回值为零,若想获得更多错误信息,请调用GetLastError函数。
其他信息
映射的架构定义用于的度量单位转换逻辑单位为组件单位;它还定义orientation设备的x和y轴。GDI使用该映射模式转换逻辑坐标转换为适当的设备坐标。MM_TEXT模式在设备像素允许应用程序中工作,1个单位为1像素相等。像素的实际大小从设备而异到计算机。
MM_HIENGLISH、MM_HIMETRIC、MM_LOENGLISH、MM_LOMETRIC和MM_TWIPS模式对于实际有意义的单位必须绘图应用程序很有用的,MM_ISOTROPIC模式可确保1:1长宽比的,很有用,同时保留图形的确切的形状是很重要的。MM_ANISOTROPIC模式允许将独立地调整的x坐标和y坐标。
注意:如果调用SetLayout更改DC (设备上下文)到从右到左的布局,SetLayout自动将映射的模式。MM_ISOTROPIC。
例子
SetMapMode (hdc, MM_ISOTROPIC);//设定映像模式
SetWindowExtEx (hdc, 1000, 1000, NULL);
SetViewportExtEx (hdc, cxClient / 2, -cyClient / 2, NULL);
SetViewportOrgEx (hdc, cxClient / 2, cyClient / 2, NULL); //设定视口原点坐标
参考资料
CDC::SetMapMode.microsoft.2016\u5e747\u6708
层次结构图.microsoft.2016
最新修订时间:2024-01-08 17:03
目录
概述
简介
语法结构及要求
参数
参考资料