Qt提供了强大的打印功能,我们可以使用QPainter直接在一个QPrinter的实例中进行打印,对于文件的输出我们有两种方式可以选择,一种是利用QPrinterDialog来指定打印机及打印格式;第二种方法是利用代码设置QPrinter的输出格式,纸张尺寸,并利用QFileDIalog来选择输出路径。
第一种方法:
QPrintDialog printDialog(printer, parent);
if (printDialog.exec() == QDialog::Accepted) {
// print ...
}
第二种方法:
QPrinter printer;
printer.setPaperSize(QPrinter::A4); //设置纸张大小
printer.setPageSize(QPageSize(QSize(1200,800))); //设置页面大小
printer.setOutputFormat(QPrinter::PdfFormat); //设置输出格式
QString file_path = QFileDialog::getSaveFileName(this, tr("Export PDF"), //输出路径选择对话框
"/home/jana/untitled.pdf",
tr("PDF Files (*.pdf)"));
if(!file_path.isEmpty())
{
if(QFileInfo(file_path).suffix().isEmpty())
file_path.append(".pdf");
printer.setOutputFileName(

本文总结了Qt的打印功能,包括通过QPainter在QPrinter上直接绘图,以及两种设置打印机参数和输出路径的方法。一是使用QPrinterDialog指定打印机和格式,二是通过代码设置QPrinter并利用QFileDialog选择路径。打印流程包括创建QPrinter实例,设置参数,使用QPainter进行绘图,最后调用end()结束绘制。

473

被折叠的 条评论
为什么被折叠?



