SetViewportExtEx函数的问题 - C++ Builder / Windows SDK/API
在网上看到GetDeviceCaps函数中的第二个参数如果是LOGPIXELSX的话,代表沿屏幕宽度每逻辑英寸的像素数,但是我在使
用SetViewportExtEx(hdc,GetDeviceCaps(hdc,LOGPIXELSX)*2),GetDeviceCaps(hdc,LOGPIXELSY)*2)函数的时候是把当
前绘制的图像放大,这个函数第二第三个参数 “指定观察口以设备单位为单位的水平轴的范围”、“指定观察口以设备单位
为单位的垂直轴的范围”是什么意思啊,为什么我把“沿屏幕宽度每逻辑英寸的像素数”扩大之后会放大图像呢?求解释
[解决办法]
你自己都问的不清不楚的.你先查查这两个函数是干什么用的就应该清楚了吧.
int GetDeviceCaps(HDC hdc, int nlndex);
LOGPIXELSX:沿屏幕宽度每逻辑英寸的像素数.
LOGPIXELSY:沿屏幕高度每逻辑英寸的像素数.
函数功能:该函数用指定的值来设置指定设备环境坐标的X轴、Y轴范围。
函数原型:BOOL SetViewportExtEx(HDC hdc, int nXExtent, int nYExtent, LPSIZE lpSize); 参数: hdc:指向设备描述表的句柄。 nXExtent:指定观察口以设备单位为单位的水平轴的范围。 nYExent:指定观察口以设备单位为单位的垂直轴的范围。 lpSize:指向Size结构的指针,先前的设备单位为单位的视口范围存放在此结构中,如lpSize值为NULL,则什么也没返回。
http://hi.baidu.com/tony514/blog/item/b305f11953b50377dbb4bd6b.html