可以使用QFontMetrics类来计算字体的大小,示例代码如下:
#include <QLabel>
#include <QFontMetrics>
void calculateFontSize(QLabel *label, int height)
{
QFont font = label->font();
QFontMetrics metrics(font);
int fontSize = metrics.width(label->text()) / label->text().length();
fontSize = height * 72 / metrics.height(); // 将高度转换为点数
font.setPointSize(fontSize);
label->setFont(font);
}
在调用该函数时,传入需要计算字体大小的标签控件和所需高度即可。