Qt 字体大小的计算

   在QFont当中有两种方式设置字体大小,一种是PixelSize,另一种是PointSize

 

   Point实际是磅,也就是 1/72 inch

 

   我们可以从PainterDevice中得到当前DPI(Dot per inch)。因此 Pixel = DPI * Point / 72

 

   例如设置字体为20Point。 那么字体的像素大小是 90 * 20 / 72 约等于 25.

 

   可以将字体设置为25Pixel,看到字体的大小就是20Point和25Pixel大小是一样的。

 

    QFont当中设置的大小,实际上字体的高度,由如下组成。

 

 

  由PixelSize设置的高度,实际是Asent + 1像素(baseline的高度)。

 

 

 

在字体大小中涉及了以下知识:

   DPI: Dot per inch,在显示器上也就是每英寸包含的像素。英尺的换算为 1 cm = 0.39 inch, 1 inch = 2.54 cm。

         DPI 可以通过如下计算得来:

             水平 dpi = 水平 resolution * 2.54 / 显示器宽度

             垂直 dpi = 垂直 resolution * 2.54 / 显示器高度

 

   pixel pitch(点距): 像素点间距离。可以用25.4mm / DPI得到。

 

   字体在屏幕上的实际大小 = 字体像素大小 * 点距

 

   大部分显示器的DPI为90.6左右,垂直和水平点距可能不一样。但windows为了方便就同一了点距,为96。我当前使用的ubuntu的点距也是96。因此如果想要看到更大的字体可以使用更大的点距。

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值