如何用西里尔符号打印html? 我试着这样做:
QTextDocument *document = new QTextDocument();
document->setHtml(htmlContent);
document->print(printer);
但文档以错误的编码方式打印。 Html编码是utf-8。
答案 0 :(得分:1)
假设htmlContent是QString,你可能用错误的编码创建了它。例如,如果原始HTML数据(字节)是UTF-8,那么您应该使用类似
的内容 htmlContent = QString::fromUtf8(myHtmlDataCharPtr);
如果htmlContent是指向UTF-8数据的char指针,那么你应该使用
document->setHtml(QString::fromUtf8(htmlContent));
答案 1 :(得分:0)
QTextDocument需要非常正确的HTML才能正常运行 - WebKit / Firefox / QWebBrowser通常接受输入不良的输入并仍然正确显示。 因此,将输出写入文件并将其发送到某些HTML检查程序,修复所有问题,然后再试一次。