QPrinter 输出到 pdf 不等于 paper/page 尺寸 (A4)
QPrinter output to pdf is not equivalent to the paper/page size (A4)
我正在尝试将 QWidget ui 输出到这样的 pdf 文件;
const QString filename = "class1bills.pdf";
printer = new QPrinter(QPrinter::HighResolution);
printer->setOutputFormat(QPrinter::PdfFormat);
printer->setOrientation(QPrinter::Portrait);
printer->setPaperSize(QPrinter::A4);
printer->setPageSize(QPrinter::A4);
printer->setPageMargins (15,15,15,15,QPrinter::Millimeter);
printer->setFullPage(false);
printer->setOutputFileName(filename);
painter = new QPainter(printer);
class1Bill->render(painter, QPoint(), QRegion(), QWidget::DrawChildren | QWidget::DrawWindowBackground);
painter->begin(printer);
painter->end();
assert(QFile::exists(filename));
class1Bill
是继承QWidget的class的一个对象。一切正常,但当我打开 pdf 文件时,我希望小部件 ui 看起来适合 A4 页面大小,但它看起来非常小,我什至没有第一眼看到它。如何让小部件 ui 适合我设置的 A4 纸尺寸?
设置printer->setFullPage(true);
以适应纸张大小
我正在尝试将 QWidget ui 输出到这样的 pdf 文件;
const QString filename = "class1bills.pdf";
printer = new QPrinter(QPrinter::HighResolution);
printer->setOutputFormat(QPrinter::PdfFormat);
printer->setOrientation(QPrinter::Portrait);
printer->setPaperSize(QPrinter::A4);
printer->setPageSize(QPrinter::A4);
printer->setPageMargins (15,15,15,15,QPrinter::Millimeter);
printer->setFullPage(false);
printer->setOutputFileName(filename);
painter = new QPainter(printer);
class1Bill->render(painter, QPoint(), QRegion(), QWidget::DrawChildren | QWidget::DrawWindowBackground);
painter->begin(printer);
painter->end();
assert(QFile::exists(filename));
class1Bill
是继承QWidget的class的一个对象。一切正常,但当我打开 pdf 文件时,我希望小部件 ui 看起来适合 A4 页面大小,但它看起来非常小,我什至没有第一眼看到它。如何让小部件 ui 适合我设置的 A4 纸尺寸?
设置printer->setFullPage(true);
以适应纸张大小