Qt PDF预览功能实现汇总

Qt PDF预览功能实现汇总(持续更新)

目前Qt 程序实现PDF预览功能主要有一下几种方式:

  • 使用第三方库
    • Poppler
    • MuPDF
    • Pdfium
    • QtPdfium: 基于Pdfium的Qt封装版本
  • 使用Qt内部模块和类
    • QPrintPreviewWidget,QPrinter, QPainter
    • QWebEngeWidget: 目前Qt5.6以及后续版本,仅MSVC编译器才有,mingw编译器无改模块

基于Poppler

Poppler为开源库,但是目前仅有32位版本的Qt库文件,无64位版本库。若想使用Qt 64位版本,如采用现在的Qt5.12版本开发软件,使用Poppler会不兼容,需要自己采用CMake下载Poppler源码编译库文件。但是Poppler编译时,需要依赖10多个外部库,想要找齐这些库,同时这些库还要编译,难度太大,而且资源不好找,所以对于64位程序,并不可行

基于MuPDF

待尝试验证

基于Pdfium

待尝试验证

Pdfium是谷歌开源的祈福阅读器的部分代码

基于QtPdfium

已经实现基于Pdfium源码,在Qt5.12 mingw 64位版本,进行编译生成Qt 版本的 64位动态和静态库文件。同时实现了pdf文件读取、画布类、显示类,实现放大、缩小、多页显示、滚动条、拖动等功能。
详情见后续更新代码和效果预览:
Qt PDF预览功能实现汇总_第1张图片

类似于PDF阅读器功能,基本实现。

基于QPrintPreviewWidget

已经验证完成,见我另外一篇文章。
可以实现PDF实时预览,放大和缩小功能

《Qt程序内预览PDF内容(QPrintPreviewWidget)》

你可能感兴趣的:(Qt,qt,c++,mupdf)