我尝试使用Qt打开和读取PDF文件,但没有特定的方法可以做到这一点。
eulz3vhy1#
据我所知,Qt本身并不包括PDF阅读/渲染功能。你可能想看看有Qt绑定的libpoppler。
eh57zj3b2#
我在qt-project.org上发现了这篇非常有趣的文章-“处理PDF - Qt项目”。本页讨论了在Qt应用程序中处理PDF文档的各种可用选项。本页并没有确切地展示如何“打开和显示现有的PDF文档”,但它可以帮助您从所有解释中推断出一些有用的东西。在这里,页面说:为了将现有PDF文档中的页面或元素渲染为图像文件或内存中的像素图(例如,用于缩略图生成或实现自定义查看器),可以使用第三方库(例如:poppler-qt 4(freedesktop.org)和muPDF(mupdf.com))。或者,可以将任务委托给现有的命令行工具(如poppler-utils(freedesktop.org)和muPDF(mupdf.com))。
zfciruhq3#
查看QPdfDocument类。这个类可以打开PDF,你可以使用render函数将页面渲染成图像。我使用QQuickPaintedItem然后“绘制”这个图像,但我相信有更多的方法来处理QImage输出。
#include <poppler/qt5/poppler-qt5.h>使用Poppler::Document类来加载和处理整个PDF文档,并查看Poppler::Page::renderToImage函数以QImage的形式输出页面。
#include <poppler/qt5/poppler-qt5.h>
kiz8lqtg4#
答案很简单:Qt API不支持它。其他答案:你可以编码它,我建议你看看this Qt application,它使用Ghostscript
pbgvytdp5#
我发现打开PDF的最好方法是在Qt中使用QProcess。
67up9zun6#
您可能想使用okular进行pdf处理。
6条答案
按热度按时间eulz3vhy1#
据我所知,Qt本身并不包括PDF阅读/渲染功能。你可能想看看有Qt绑定的libpoppler。
eh57zj3b2#
我在qt-project.org上发现了这篇非常有趣的文章-“处理PDF - Qt项目”。
本页讨论了在Qt应用程序中处理PDF文档的各种可用选项。本页并没有确切地展示如何“打开和显示现有的PDF文档”,但它可以帮助您从所有解释中推断出一些有用的东西。
在这里,页面说:
为了将现有PDF文档中的页面或元素渲染为图像文件或内存中的像素图(例如,用于缩略图生成或实现自定义查看器),可以使用第三方库(例如:poppler-qt 4(freedesktop.org)和muPDF(mupdf.com))。
或者,可以将任务委托给现有的命令行工具(如poppler-utils(freedesktop.org)和muPDF(mupdf.com))。
zfciruhq3#
自Qt 5.10起
查看QPdfDocument类。这个类可以打开PDF,你可以使用render函数将页面渲染成图像。我使用QQuickPaintedItem然后“绘制”这个图像,但我相信有更多的方法来处理QImage输出。
Qt 5.10之前
#include <poppler/qt5/poppler-qt5.h>
使用Poppler::Document类来加载和处理整个PDF文档,并查看Poppler::Page::renderToImage函数以QImage的形式输出页面。kiz8lqtg4#
答案很简单:Qt API不支持它。
其他答案:你可以编码它,我建议你看看this Qt application,它使用Ghostscript
pbgvytdp5#
我发现打开PDF的最好方法是在Qt中使用QProcess。
67up9zun6#
您可能想使用okular进行pdf处理。