SetSTretchBltMode

SetMapMode函数用于设置设备上下文的映射模式,影响逻辑单位到设备单位的转换。该函数接受MM_开头的一系列常量参数,如MM_TEXT、MM_HIENGLISH等,定义不同的度量单位和轴方向。不同模式适用于不同的应用场景,如MM_TEXT适合像素精确操作,而MM_HIMETRIC等模式则适合以真实世界单位进行绘图。映射模式的改变会影响GDI如何转换逻辑坐标到设备坐标。

        函数功能描述:该函数设置指定设备环境的映射方式,映射方式定义了将逻辑单位转换为设备单位的度量单位,并定义了设备的X、Y轴的方向。

函数原型: 

           int SetMapMode(HDC hdc, int fnMapMode);

语法结构及要求

        virtual int SetMapMode(

        int nMapMode

        );

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_HIENGLISHMM_HIMETRICMM_LOENGLISHMM_LOMETRICMM_TWIPS模式对于实际有意义的单位必须绘图应用程序很有用的(例如英寸或毫米)。MM_ISOTROPIC模式可确保1:1长宽比的,很有用,同时保留图形的确切的形状是很重要的。MM_ANISOTROPIC模式允许将独立地调整的x坐标和y坐标。

        注意:如果调用SetLayout更改DC (设备上下文)到从右到左的布局,SetLayout自动将映射的模式。MM_ISOTROPIC

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值