Qt 求富文本的高度或大小

QT求富文本的高度

在写一些需要精确布局或者排版的软件时候,我们需要知道文本的宽度和高度,保证我们在适当的坐标中使用drawText。或利用文本的高度进行布局与设计其他相关的东西。

不同的字体,字宽字高都是不一样的。所以计算文本宽度的是一个和字体相关的一个类

QFontMetrics

具体的使用方法如下:

QFont font;
font.setFamliy("宋体");//所求文本的字体为宋体
font.setPointsize(12);、、所求字体的大小
/*
根据不同的情景设置font,例如是否粗体
*/
QFontMetrics fm;
fm.setFont(font);
int height = fm.height(string);//strin为所求的字符串。

但是这只是一种基本的方法,我们进行的富文本的编辑一般用到QText 这个类进行文本的编辑。此时面的方法也不太实用。好在QText这个类已经提供了文本大小 size 的接口,具体的使用方法为:

Qtext text;
int是ringheight = text.edit().size().height;

通过调用上面函数爱便可实时所编辑富文本的高度或大小。

posted @ 2021-02-28 22:23  小陈晨  阅读(532)  评论(0编辑  收藏  举报