
获取到一段 PDF的二进制流,将二进制流的PDF进行选择打印机打印,这里也可以作为打开本地PDF文件打印
Qt 自带的QPrinter,支持QTextDocument文档打印,支持html打印,也支持 QPixmap打印,这里思路是将PDF逐张转成QImage,然后再转成QPixmap打印。
尝试了poppler和mupdf两种第三方包,发现都需要本地编译,mupdf官网的描述更加简单,后来找到了poppler已经编译好的包,将相关头文件以及 dll 加入项目。
loadFromData和load分别对应转换本地文件以及二进制流
参考资料
QtMupdf
pdf 环境搭建poppler+qt5
使用QtPrinter接流打印的步骤如下:1.首先,将QtPrinter实例化,并设置打印机的名称、文件名等参数;
2.调用QtPrinter的start()方法,开始接收打印流;
3.调用QtPrinter的write()方法,将打印流写入QtPrinter;
4.调用QtPrinter的end()方法,结束接收打印流;
5.调用QtPrinter的print()方法,开始打印文件;
6.调用QtPrinter的finish()方法,完成打印文件的处理。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)