QT实现操控打印机打印图片


        开发环境:windows+QT5.9

        给个前提:你的电脑需要能有连接打印机,并且能够打印,做这个程序前,先确保打印机连接到你的电脑能够进行打印。这样程序写好,测试时候只要不能打印,就是程序问题。

        最近有个任务是用QT写个界面通过点击按钮,实现连接打印机打印出QT某个控件中的图片,界面如下:

printer1.png

代码实例(部分)

        该段代码,是一个按钮点击事件,点击直接进行打印机打印操作,各种设置,比如纸张大小,显示位置都已经设置死,不可调整,想要可以自己设置的,请前往 https://github.com/eitail/QT_Printer,进行下载完整代码。

#
#
void Printer_Ui::on_bt_prints_clicked()
{
    QPrinter printerPixmap;
    QPixmap pixmap = QPixmap::grabWidget(ui->lab_img, ui->lab_img->rect());  //获取界面的图片
    printerPixmap.setOrientation(QPrinter::Landscape);//纵向:Portrait 横向:Landscape
    printerPixmap.setPageSize(QPrinter::A4);//设置纸张大小
    QPainter painterPixmap;
    painterPixmap.begin(&printerPixmap);
    painterPixmap.scale(1, 1);//设置图像长宽是原图的多少倍
    painterPixmap.drawPixmap(300, 300 , pixmap);//设置图像在A4中的开始坐标是什么
    painterPixmap.end();
}
#
#


上一篇 下一篇