qt实现打开pdf(阅读器)功能用什么库比较合适

关于这个问题,网上搜一下,可以看到非常多的相关博客和例子,可以先看看这个总结性的博客(https://zhuanlan.zhihu.com/p/480973072)

该博客讲得比较清楚了,这里我再补充一下吧(qt官方也给出了一些答案 Handling PDF - Qt Wiki),根据调研对比,常见的几个库,个人认为如下:

顺便说一下,https://github.com/develtar/qt-pdf-viewer-library 这个也是一个pdf打开库​,介绍说是对上面qpdf用qml进行的封装,我试了一下流畅很多了,但是技术跨度太大,而且只能msvc编译成功(因为又是嵌入了WebEngine那一套,注意一个编译错误"非类模板弄为类模板",修改:friend class Singleton;之前加入一句template <class T>即可)​​​​​​。

总的来说,在qt上,应该还是高版本后(5.14以后吧),qt库自带的 qtpdf库用起来最简单方便好用,也能兼顾各种性能以及qt编码风格使用习惯什么的了 ,毕竟qt官方亲自封装的这个库(后面它们应该还会持续封装这个库的,因为接口和功能太多了,目前还封装实现得比较基础),他们也比较推荐这个,qt开发的话应该用起来是首选的吧。上面的qtpdf运行结果如下:

此外,上面的proppler-qt5库也是非常不错的,可以说是最不错的了,因为它qt形式封装得最好(连search这些都封装了),超过目前的qt第三方封装的qtpdfium库以及qt自家封装的qtpdf库了,值得用用。

看了网上这么多博客,以及自己下载的示例进行实践,发现都是将pdf页渲染为图片的形式显示,导致没法选中,以及查找等操作。要想实现的话,必须要能够支持编辑的一些更强大的库,但是这些库都非常复杂,所以要做这个功能,就要好好想想了 QT中PDF查找和高亮显示。当前qt pdf这块做得比较好的开源的是雨田哥的博客,没开源,大家也可以看看。

相关推荐
小熊熊知识库1 天前
双层PDF转换软件
pdf·双层pdf转换
慧都产品智能化2 天前
Qt 表格升级攻略:复用已有编辑器,减少重复开发
c++·qt·编辑器·qt6.3
ShineWinsu2 天前
对于Qt:QTableWidget常见属性以及QTableWidgetItem类的解析
开发语言·c++·qt·gui·客户端·表格·qtablewidget
ShineWinsu2 天前
对于Qt:QListWidget常见属性以及QListWidgetItem类的解析
开发语言·c++·qt·客户端·列表·qlistwidget·qlistwidgetitem
ShineWinsu3 天前
对于Qt:QDial常见属性以及信号的解析
开发语言·c++·qt·gui·客户端·旋钮·qdial
宛 禾3 天前
Qt 事件系统完全指南:从事件循环到实战避坑
qt
敲上瘾3 天前
Qt Widgets入门:项目模板解析与Hello World
开发语言·数据库·c++·qt·ui·qt6.3
MOONICK4 天前
QT元数据
开发语言·qt
橙橙笔记5 天前
QT的学习第四部分
linux·qt·学习·音视频
sycmancia5 天前
Qml——信号连接、自定义信号
qt