我在让中文/日文/韩文字符出现在从 QTextDocument 生成的 .pdf 中时遇到问题。字符在 QTextDocument 小部件中显示得很好。但是,然后我将文档输出为 .pdf,它们没有出现 C/J/K 字符。在寻找解决方案的过程中,我看到了很多安装字体系列的建议。但是,如果字符出现在屏幕上的小部件中,这并不意味着字体系列安装正确。所以,也许我的问题更多地与安装字体系列与显示字符有关。我现在不确定。
示例代码:
QTextDocument* pDocument = mpTextEdit->document();
QTextCursor cursor(pDocument);
QFont defaultFont("Calibri", 12);
pDocument->setDefaultFont(defaultFont);
QString str = "<h1>Hello, World!</h1>
str += "<br/>";
str += QString("名称不能为空。");
str += "<br/>";
str += "ABC";
str += "</p>";
pDocument->setHtml(str);
// Print to .pdf
QPrinter printer(QPrinter::PrinterResolution);
printer.setOutputFormat(QPrinter::PdfFormat);
printer.setPaperSize(QPrinter::A4);
printer.setOutputFileName("c:/temp/foo.pdf");
printer.setFontEmbeddingEnabled(true);
pDocument->setPageSize(printer.pageRect().size());
pDocument->print(&printer);
任何帮助将不胜感激,
迈克·登布罗格