QT怎么将图片生成pdf文件
1、创建一个QT示例工程,VS2013的左上角的“文件”菜单项,展开下图1所示的菜单,选择新秃赈沙嚣建或者添加项目,选择一个qt的应用工程,如下图所示
2、将鼠标移到项目位置,如下图所示,右键弹出项目属性菜单,如红色标注的子菜单项,选择QT Project Setting
3、弹出如下图所示的QT工程设置界面,如下图所示,选择Print Support,这个组件就是使用QT支持Pdf生成的组件
4、添加的Print Support 组件功能的支持后,还需要在使用到Printer的地方引用头文件,如下图所示
5、下面的示例代码是输出文本到pdf的,非常简单,可以简单的实现将文本输出到pdf文件中,参考代码如下QPainter text_pa足毂忍珩inter; QPrinter text_printer; text_printer.setOutputFormat(QPrinter::PdfFormat); text_printer.setOutputFileName("test_text.pdf"); text_painter.begin(&text_printer); for (int i = 0; i < 5; i++) text_painter.drawText(10, i * 30, "hello world"); text_painter.end();
6、另外加上图片输出的支持,下面的代码既将图片输出孀晏弁钾也将文本输出,代码实现非常简单,参考如下QPainter text_painter; QPrinter text_printer; text_pr足毂忍珩inter.setOutputFormat(QPrinter::PdfFormat); text_printer.setOutputFileName("test_text.pdf"); text_painter.begin(&text_printer); QPixmap pixmap = QPixmap::grabWidget(this, rect()); QRect rect = text_painter.viewport(); int factor = rect.width() / pixmap.width(); text_painter.scale(factor, factor); text_painter.drawPixmap(10, 10, pixmap); text_printer.newPage(); for (int i = 0; i < 5; i++) text_painter.drawText(10, i * 30, "hello world"); text_painter.end();
7、找到你生成这个Pdf的目录,直接双击打开这个文档就可以查看到图片和文本了,可以简单的实现pdf的生成