旅游网站改版方案,企业网站建设包含哪些内容,wordpress 免费采集插件,网站备案 太烦关于这个问题#xff0c;网上搜一下#xff0c;可以看到非常多的相关博客和例子#xff0c;可以先看看这个总结性的博客#xff08;https://zhuanlan.zhihu.com/p/480973072#xff09; 该博客讲得比较清楚了#xff0c;这里我再补充一下吧#xff08;qt官方也给出了一些…关于这个问题网上搜一下可以看到非常多的相关博客和例子可以先看看这个总结性的博客https://zhuanlan.zhihu.com/p/480973072 该博客讲得比较清楚了这里我再补充一下吧qt官方也给出了一些答案 Handling PDF - Qt Wiki根据调研对比常见的几个库个人认为如下
mupdf用的比较多官网 MuPDF: The ultimate library for managing PDF documents 这玩意用c语言写的可以说加载解析速度非常快了而且网上也有人提供了qt版封装接口叫做 mupdf-qt。好像需要自己编译成库一下依赖一些外部库编译时候有点儿难度。网上下的例子用msvc也是可以直接编译过的mingw直接编不过但是加载pdf速度明显较pdfium太慢了对比一个528页pdf。proppler官网也用得比较多可以说是最多的了也有第三方qt版接口但是一些博客例子看来其清晰度以及加载速度以及编译难度都不太好不会这个库qt版很成熟了而且不会不清晰什么的放心用吧但是功能应该挺强的吧api用起来也挺方便。实例 QT使用Poppler库来完成阅读PDF文件-CSDN博客 十、Qt 操作PDF文件_qt pdf-CSDN博客。还有个xpdf库proppler就是基于它的xpdf而且好像可以直接编译后是一个成熟的demo阅读器了。好像是渲染为图片了因此搜索等功能都无法实现这样就不太好 Qt 使用Poppler实现pdf阅读器_qt使用poppler实现pdf-CSDN博客。这个Poppler Win32 download | SourceForge.net 是编译好的32位mingw的库也是可以直接用的。看了一下这个例子Qt5使用Poppler实现PDF阅读器_poppler qt 5 是一个用于 qt 的 pdf 渲染库。它可以用来在 qt 应用程序中显示 -CSDN博客mingw可以直接编译运行发现渲染速度极其的快比qpdfium还要快而且它的库qt形式封装得最全搜索函数这些都给封装上了的。因为proppler的官方对qt进行了封装的所以完全有最好的封装实现了呀跟那个qsci编辑器库一样的网上能搜到巨多的博客所以放心用吧官方文档非常给力Poppler Qt5: The Poppler Qt5 interface library pdfium来自于福昕Google与其合作最终进行了开源加载速度以及功能都挺强大的有个第三方qt封装库qpdfium用得也很多这个和下面得qtpdf不是一套接口这个仅仅封装了几个接口而已有用的是text()函数获取当前页的文本仅此而已但是如果希望实现更多功能例如选中、查找等将需要研究底层pdfium的实现了还有书签等也没有实现库太大了非常非常困难而且作者自己也说了没实现这些功能而且好几年前已经停止更新了当然还有其它作者页进行了封装总体还是就那样吧GitHub - CaSchmidt/csPDF: PDF rendering library based on Qt and PDFium.资料和例子也很多。github搜索“qt pdf”前几名那个就是GitHub - paulovap/qtpdfium: Pdf Redening on Qt下载下来msvc直接可以编译但是mingw编译无法通过需要进行修改首先将工程提供的那几个库gid32.lib等都换成mingw下的库其次好几个文件修改加上语句#ifdef GetObject #undef GetObject #endif具体看博客QtPdfium编译_qtpdf编译-CSDN博客。qt 使用qtpdfium实现读取pdf文件_qt读取pdf-CSDN博客。qtpdf就是官方亲自对pdfium进行的封装应该算是正统的qpdfium接口了但是使用需要进行配置一下【QT】 QT开发PDF阅读器_qt实现pdf阅读-CSDN博客QT自带PDF库的使用_qpdfdocument-CSDN博客QT自带PDF库使用方法_qtpdf-CSDN博客Qt 中文文档 Qt5.15 PDF Class (从官网Qt 5.15 翻译)_qt中文文档-CSDN博客。这里有几个注意一下虽然qt5.14版本后带了该模块但是是跟QWebengine放一块的而且只能是msvc版qt才能用高版本6.x几已经增强了该pdf功能加了一些接口了更好用了想mingw用的话只能自己编译看这个博客 https://blog.51cto.com/u_2194662/5256871 即可。qpdf其实封装了 pdf.js库使用 WebEngine来执行 JavaScript进而加载文件相当于嵌入一个浏览器太重了性能这些占用可能较大。实测运行卡顿只支持msvc编译器因为qwebengine只支持msvcgithub搜索“qt pdf”前几名那个就是。 podoFo......等以及还有很多其它的库 https://zhuanlan.zhihu.com/p/679640192
顺便说一下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这块做得比较好的开源的是雨田哥的博客没开源大家也可以看看。