我尝试使用QTextDocument在QImage上绘制文本。 如何设置默认(" body")样式?
目前我使用<p>
标记,例如
QPainter painter(_image);
QTextDocument doc;
doc.setDefaultStyleSheet("p { color : green; background-color : black; }");
doc.setHtml("<p>test 123</p>");
doc.drawContents(&painter,_image->rect());
我想摆脱<p>
代码
doc.setHtml("test 123");
我试过了
doc.setDefaultStyleSheet("body { color : green; background-color : black; }");
doc.setDefaultStyleSheet("{ color : green; background-color : black; }");
doc.setDefaultStyleSheet("color : green; background-color : black; ");
doc.setDefaultStyleSheet("QImage { color : green; background-color : black; }");
编辑:
我也试过
doc.setDefaultStyleSheet("* { color : green; background-color : black; }");
答案 0 :(得分:4)
您应该使用<body>
代码包装内容:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QTextDocument doc;
doc.setDefaultStyleSheet("body { color : green; background-color : black; }");
doc.setHtml("<body>test 123</body>");
QTextEdit textEdit;
textEdit.setDocument(&doc);
textEdit.show();
return app.exec();
}