在mfc框架的对话款中,通过获取图像屏幕显示的物理尺寸,确定图像的实际物理尺寸,用程序实现
时间: 2023-03-19 14:21:50 浏览: 89
在 MFC 对话框中,可以通过以下步骤获取图像屏幕显示的物理尺寸:
1.获取屏幕的设备上下文(DC):
```
HDC hDCScreen = ::GetDC(NULL);
```
2.获取屏幕的水平和垂直分辨率:
```
int nScreenX = ::GetDeviceCaps(hDCScreen, HORZRES);
int nScreenY = ::GetDeviceCaps(hDCScreen, VERTRES);
```
3.获取屏幕的水平和垂直物理尺寸:
```
double dScreenX = ::GetDeviceCaps(hDCScreen, HORZSIZE);
double dScreenY = ::GetDeviceCaps(hDCScreen, VERTSIZE);
```
4.释放设备上下文:
```
::ReleaseDC(NULL, hDCScreen);
```
接下来,可以通过以下代码获取图像的实际物理尺寸:
```
CImage image;
image.Load(_T("your_image_path"));
double dImageWidth = (double)image.GetWidth() / (double)nScreenX * dScreenX;
double dImageHeight = (double)image.GetHeight() / (double)nScreenY * dScreenY;
```
在上面的代码中,`GetWidth()` 和 `GetHeight()` 函数获取图像的像素宽度和高度,将其与屏幕分辨率和物理尺寸比较,即可计算出图像的实际物理尺寸。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)