读书人

vb-fontsize属性,该如何处理

发布时间: 2012-01-03 22:16:06 作者: rapoo

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磅
这就是你最后得到的字体大小。

读书人网 >VB

热点推荐