我这里是写论文,自己用qt做了个坐标绘图软件,不想通过第三方截图软件截图后插入word或者外部转为pdf,然后用adobe acrobat pdf阅读器软件裁剪导出为eps格式图片给latex用,这样做清晰度会受影响。所以想直接通过qt导出pdf,这样非常清晰,而且更方便使用,下图是我的软件:(关于这个软件,可以看我这篇博客用Qt自己开发的 数学坐标绘图软件 可用于 论文,报告插图)

我实现后的效果如下:

可以看到,这是我清晰的。实现代码如下:(就一个函数就完成了,注释比较详细,看一下就懂了)

#include <QPdfWriter>
#include <QPainter>void MainWindowDraw::on_pushButtonScreenshotPDF_clicked()
{/********************* 截图 *********************/QPoint tmp = QPoint(ui->customPlot->x(),ui->customPlot->y()+ui->menubar->height());QPixmap pix=QWidget::grab(QRect(tmp,ui->customPlot->size()));/********************* pdf文件生成 *********************/QString path = QCoreApplication::applicationDirPath() + "/tmp.pdf";//实例化该文件,并以只写的方式打开QFile pdfFile(path);if(!pdfFile.open(QIODevice::WriteOnly)){QMessageBox::warning(this,tr("write File"),tr("Cannot open file:\n%1").arg(path));return;}QPdfWriter *pdfWriter = new QPdfWriter(&pdfFile);               //实例化QPdfWriterQPainter *pic_painter = new QPainter(pdfWriter);                //实例化QPainterpdfWriter->setPageSize(QPagedPaintDevice::A4);                  //设置纸张为A4纸pdfWriter->setResolution(QPrinter::ScreenResolution);           //设置分辨率// 开始绘图QRect rect = pic_painter->viewport();              //获取painter的视口区域int factor = rect.width()/pix.width();         //计算painter视口区域与抓取图片区域的尺寸比例因子pic_painter->scale(factor,factor);       //绘制时按照比例因子放大pic_painter->drawPixmap(10,10,pix);           //按照坐标画图delete pic_painter;delete pdfWriter;pdfFile.close();/********************* 复制进入剪切板 *********************/QList<QUrl> copyfile;QUrl url=QUrl::fromLocalFile(path);    //待复制的文件if(url.isValid()){copyfile.push_back(url);}else{return;}QMimeData *data=new QMimeData;data->setUrls(copyfile);QClipboard *clip=QApplication::clipboard();clip->setMimeData(data);ui->textBrowserStatus->append("导出为pdf成功ok");
}

Qt5把图片如何导出为pdf再到剪切板相关推荐

  1. 经验:从ppt复制到word中的图片在导出成PDF后出现黑框怎么解决

    经验:从ppt复制到word中的图片在导出成PDF后出现黑框怎么解决 更新历史 20190602: 首次发布 在使用ppt和word的过程中,发现一个现象:将ppt中的图片复制到word中时,图片是没 ...

  2. C# Winform 从扫描仪获取图片 并导出为PDF

    最近在做一个科研档案管理系统的项目,需要能够直接调用扫描仪进行扫描.扫描仪又分为是否有进稿器(批量扫描和一张一张扫描),进稿器模式使用twain协议就可以做,直接可以得到PDF文件,这个网上有很多案例 ...

  3. 截图指定区域图片并导出至PDF文件

    导出效果: void QTabTreatVerifyPanel::ExportShotScreenSlot(QString path) { //m_pixmap = QPixmap::grabWind ...

  4. 让input支持 ctrl v上传粘贴图片? 让input支持QQ截图或剪切板中的图像数据(Java实现保存)...

    原理:监听粘贴 → 获取粘贴内容 → 将内容上传 → 抓取后返回替换至input 我们在生产中用到的界面: 测试地址 http://sms.reyo.cn 用户名:aa 密码:123456 以下是PH ...

  5. 【Python】外文PDF阅读助手-使用win32clipboard实现去除剪切板(Clipboard)内容的换行符

    1. 实现效果 在阅读外文PDF时,需要复制文字,会发现粘贴出来的文字都出现很奇怪的换行. 使用该Python脚本,可直接替换掉 剪切板 内的换行.再 Ctrl + V,完美. 2. 脚本代码 改自: ...

  6. VC 操作word部分代码(利用剪切板取得Word中的图片,ClipBoard, Addpicture)

    在32位WIN7 VS2012环境下测试通过,在64位WIN7 VS2013环境下GlobalLock和GlobalSize函数返回NULL,具体参见注释 // 读取给定文件名的Doc文档中的数据 B ...

  7. OFDRW提供了将OFD文档导出为其他格式文档的能力,如导出为图片、SVG、PDF、文本等

    OFDRW提供了将OFD文档导出为其他格式文档的能力,如导出为图片.SVG.PDF.文本等. OFDRW 转换模块在 2.0.0 之后抽象了多种文档导出接口,使用统一的 API 实现 OFD 文档导出 ...

  8. qt5 传输 图片压缩_图片如何转换成pdf?免费教你几个宝藏方法,请低调使用!...

    图片如何转换成pdf?很多人在传输图片的时候都喜欢直接打包文件将其压缩再传送,其实这样并不方便他人查看,并且受到压缩/解压缩工具的限制,很可能对方压根无法查看收到的图片.建议大家可以尝试把图片转换为P ...

  9. 实现DOC、DOCX转换为PDF 再将PDF转换为图片

    实现DOC.DOCX转换为PDF 再将PDF转换为图片 首先导入需要的依赖 <dependency><groupId>cn.hutool</groupId>< ...

最新文章

  1. FastAI 2019课程学习笔记 lesson 2:自行获取数据并创建分类器
  2. 花了我一个晚上浓缩了一整套阿里资深技术专家设计教程整理出的java架构设计方法
  3. python 网络相关依赖库 dpkt、scapy、pcap 安装
  4. JS window对象常用方法
  5. java ceilingentry_java.util.TreeMap.ceilingKey()
  6. 经典C语言程序100例之十
  7. android camera分辨率设置,请问如何使用camera2设置全屏preview,要求适配所有屏幕尺寸?...
  8. python实现蜘蛛功能批量下载手机壁纸
  9. 以太坊 node data write error_Node之 创建服务器与客户端
  10. Kernel那些事儿之内存管理(2) --- 百闻不如一见
  11. jQuery (二)
  12. Matlab中TCP通讯-实现外部程序提供优化目标函数解
  13. 整人小程序【转自CSDN】
  14. 支配树(Dominator Tree)
  15. MarkdownPad 2的安装、配置、优化,自定义样式、生成目录,解决win10渲染错误等
  16. 程序员技术面试与HR谈薪资技巧的一些经验心得
  17. 【Java】浅谈Swing概况及简单窗口的构建
  18. 初识Python之刨根问底
  19. 拒绝踩坑!源码编译 tensorflow 解决 cuda 不配套 万金油方法
  20. 1549: 蔡老板发工资

热门文章

  1. 1400亿改造大明宫遗址区 西安将建城市中央公园
  2. 安全信息管理系统(OSSIM)
  3. 海信linux系统信息,海信公交车数据采集系统   调试信息
  4. 优麒麟的一些使用上的问题
  5. 为什么一场比赛进3球叫帽子戏法?
  6. u盘显示请插磁盘f_教你自己解决U盘故障(磁盘不能打开并提示请插入磁盘)
  7. 【Java并发编程实战】(十七):Future和CompletableFuture的原理及实战——异步编程没有那么难
  8. waves效果器_Waves混音指南:疯狂、混乱、创造性的失真,用Berzerk失真开脑洞!...
  9. h5故障代码_格力变频空调显示故障代码“H5”维修方法与流程
  10. Mac | 替换系统自带的壁纸