vb-fontsize属性
Private Sub Form_Click()
Print Label1.FontSize
End Sub
Private Sub Form_Load()
Label1.AutoSize = True
Label1.FontSize = 20
End Sub
为什么打印出来字体的大小是20.25?
[解决办法]
首先:
1英寸 = 72磅
默认屏幕 DPI 为 96,即 1英寸 = 96 像素。
其次:
FontSize 是一个兼容属性,其实是 Font.Size,单位由字体决定。
最后:
无论字体设计时用什么单位,作为屏幕字体,必须转换为像素单位。
所以:
[Property Let] Font.Size = 20
20磅 = 20/72*96 ≈ 27像素
所以实际设备显示的字体大小为 27像素。
[Property Get] Font.Size = 27/96*72 = 20.25磅
这就是你最后得到的字体大小。