如何用vba获取屏幕显示器每英寸包含的像素数目ppi?

PPI:Pixels Per Inch也叫像素密度,所表示的是每英寸所拥有的像素数量。
PPI数值越高,代表显示屏能够以越高的密度显示图像,画面的细节就会越丰富。

在vba中可以用api函数GetDeviceCaps获取显示器的ppi。

GetDeviceCaps函数可以获取指定设备的各种信息。

它的语法如下:

其中参数hdc为要获取的设备DC的句柄,index参数为要获取的设备的信息。

当参数hdc为0,index参数为LOGPIXELSX时,返回的是显示器屏幕宽度方向上每英寸的像素数。

为LOGPIXELSY时,返回的是显示器屏幕高度方向上每英寸的像素数。

基于以上的知识可以通过如下的代码获取显示器的PPI:

为了方便使用,可以在vba中自定义获取屏幕显示器PPI的自定义函数如下:





       

发表评论