如何通过点击按钮增加富文本的大小?
我有一个QTextEdit框,里面粘贴了Rich文本。点击+ [ui按钮]我需要增加其中所有文字的字体大小。关于如何做到这一点的任何想法?
答案 0 :(得分:1)
这是你应该在插槽内做的事情:
//-------------------------desired format-------------------------------
qreal pointSize = 40; // 40 for example, you can parameterize it
QTextCharFormat format;
format.setFontPointSize(pointSize);
//----------------------------------------------------------------------
ui->textEdit->selectAll();
// ^^^^^^^^^^^ You ask for all text in the textedit
// But remember partially change with mouse selection is also doable
ui->textEdit->mergeCurrentCharFormat(format);
(P.S。ui->textEdit
是指向QTextEdit
)
关键是创建一个QTextCharFormat
的实例来设置" 部分"字体信息(例如:仅尺寸信息)并使用QTextEdit::mergeCurrentCharFormat
将原始格式与新格式合并。
通过上述操作合并后,将保留除大小以外的颜色,字体等:
答案 1 :(得分:0)
您可以使用QTestEdit::setCurrentFont()
功能。例如:
QTextEdit te;
QFont f = te.currentFont();
int oldPointSize = f.pointSize();
int newPointSize = oldPointSize + 10;
f.setPointSize(newPointSize);
te.setCurrentFont(f);
te.setText("Test");
te.show();