如何在QWidget中获得从字符顶部到其基线(即其实际上升)的高度?



我正在尝试构建一个工具,可以显示修改文本(即,与一些额外的笔画)在屏幕上使用QWidget。因此,为了将笔画放置在正确的位置,我需要知道笔画所加的字符的上升高度。

和我有点卡住检索实际上升的字符。我尝试了以下方法:

  • 方法QFontMetrics::ascent()将给我整个字体的上升;这不是我需要的。
  • 方法QFontMetrics::boundingRect(&char).height()将给我我想要的,只要字符使用它的任何下降部分。但是,如果字符使用一些的下降,然后该方法将返回给我实际的高度字符。如果字符使用所有的下降(即字体下降);然后我可以减去它来得到实际的上升。但是我不知道如何解决这个问题,角色只是使用了一点点它的血统。

有什么方法可以解决这个问题吗?有人能在这个问题上给我点建议吗?

提前感谢你,

您可以使用QFontMetrics::boundingRect。返回的QRect的起点为(0,0),字符c的升序为…

-QFontMetrics::boundingRect(c).top()

,同样地,下降到…

QFontMetrics::boundingRect(c).bottom()

最新更新