好的,问题很简单:当使用QTextDocument ()方法时,我无法在setHtml中得到一个新的行。我的意见是:
"<i>Hello</i> <b>World</b> </br> a"我的产出是:
你好World a
这意味着斜体和粗体文本没有问题,但是'a'应该在一个新的行中。
我将在下面发布整个源代码。有许多事情需要注意:
1)然后将QTextDocument传输到QPrinter,以便它可以创建一个包含文本的PDF文件。
2)如果你要测试程序,你应该修改第15行
printer.setOutputFileName("C:\\Users\\SameTime\\Desktop\\2.pdf");走一条适合你的路。
源代码:
#include <QTextDocument>
#include <QPrinter>
#include <QApplication>
#include <QString>
int main( int argc, char **argv )
{
QApplication app( argc, argv );
QPrinter printer;
printer.setOutputFormat(QPrinter::PdfFormat);
printer.A4;
QTextDocument doc;
QString a ="<i>Hello</i> <b>World</b> </br> a";
doc.setHtml(a);
printer.setOutputFileName("C:\\Users\\SameTime\\Desktop\\2.pdf");
doc.print(&printer);
printer.newPage();
return 0;
}发布于 2013-06-15 15:47:23
使用<br>。</br>无效。
<i>Hello</i> <b>World</b> <br> a发布于 2013-06-16 13:39:28
Riateche几乎是对的。
虽然</br>在任何HTML版本中都是无效的,但某些HTML版本(尤其是xhtml)的“适当”形式实际上是<br/>,尽管许多浏览器都能很好地处理<br>。
https://stackoverflow.com/questions/17125336
复制相似问题