Qt 生成pdf

在.pro里面添加
        qtHaveModule(printsupport): QT += printsupport(因为Qt5将打印的相关类放到了Qtprintsupport模块
添加头文件
        #include <qprinter.h>
               #include <QPainter>

void MainWindow::pushButton_clicked()
{
    //this->update();
    QPrinter printer_pixmap(QPrinter::HighResolution);
    printer_pixmap.setPageSize(QPrinter::A4); //设置纸张大小为A4
    printer_pixmap.setOutputFormat(QPrinter::PdfFormat); //设置输出格式为pdf
    printer_pixmap.setOutputFileName("C:\\test_pdf.pdf"); //设置输出路径
    QPixmap pixmap = QPixmap::grabWidget(this,this->rect()); //获取程序当前界面的图片
    QPainter painter_pixmap;
    painter_pixmap.begin(&printer_pixmap);
    QRect rect = painter_pixmap.viewport();
    int multiple = rect.width()/pixmap.width();
    painter_pixmap.scale(multiple, multiple); //将图像(所有要画的东西)在pdf上放大multiple-1倍
    painter_pixmap.drawPixmap(0, 0, pixmap); //画图
    painter_pixmap.end();

}

在下在想,可不可以设置输出参数?应该可以,怎么设置?各位有好点子的请指正在下!

补充;下拉菜单选择输出纸张类型


以上是图片生成pdf,还有文本、html生成pdf;详见附件;

代码来自博主:一去、二三里的pdf教程里面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值