我想在 Qt 控制台应用程序中创建 PDF 文件。但创建的文件大小为0B,无法打开。GUI 应用程序中的相同代码也有效。控制台和 GUI 应用程序中的代码有什么区别?我应该怎么做才能使代码在控制台应用程序中运行?提前感谢您的帮助!
#include <QCoreApplication>
#include <QPrinter>
#include <QTextDocument>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString html = "<h1>Hi!</h1>";
QTextDocument document;
document.setHtml(html);
QPrinter printer(QPrinter::PrinterResolution);
printer.setOutputFormat(QPrinter::PdfFormat);
printer.setOutputFileName("test.pdf");
document.print(&printer);
return a.exec();
}
Run Code Online (Sandbox Code Playgroud)
在这里它正在工作。
#include <QApplication>
#include <QPrinter>
#include <QTextDocument>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QString html = "<h1>Hi!</h1>";
QTextDocument document;
document.setHtml(html);
QPrinter printer(QPrinter::PrinterResolution);
printer.setOutputFormat(QPrinter::PdfFormat);
printer.setOutputFileName("test.pdf");
document.print(&printer);
return a.exec();
}
Run Code Online (Sandbox Code Playgroud)
所以看起来你只需更改QCoreApplicationby QApplication。