开发环境:windows+QT5.9
给个前提:你的电脑需要能有连接打印机,并且能够打印,做这个程序前,先确保打印机连接到你的电脑能够进行打印。这样程序写好,测试时候只要不能打印,就是程序问题。
最近有个任务是用QT写个界面通过点击按钮,实现连接打印机打印出QT某个控件中的图片,
代码实例(部分)
该段代码,是一个按钮点击事件,点击直接进行打印机打印操作,各种设置,比如纸张大小,显示位置都已经设置死,不可调整,想要可以自己设置的,请前往 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();
}