获取QPainter绘制的文本尺寸

时间:2015-08-27 15:07:45

标签: qt text qpainter

我想使用QPainter::drawText命令绘制一些文本。

为了正确设置其位置,我需要知道绘制字符串的尺寸(以像素为单位)。

有没有办法知道字符串的像素尺寸?可能之前没有画过它?

1 个答案:

答案 0 :(得分:1)

QFontMetrics类只有一个方法用于此目的:boundingRect()

来自Qt文档(http://doc.qt.io/qt-5/qfontmetrics.html#boundingRect-2):

Returns the bounding rectangle of the characters in the string specified by text.

请注意,边界矩形提供绘制文本的宽度,width()函数也提供尾随空格的宽度。也来自Qt docs:

boundingRect() returns a rectangle describing the pixels this string will cover whereas width() returns the distance to where the next string should be drawn.