gpt4 book ai didi

c++ - 在 Qt5.8 中使用 pdf.js

转载 作者:行者123 更新时间:2023-11-27 22:45:45 27 4
gpt4 key购买 nike

我正在尝试在 Qt5.8 中制作一个 pdf 查看器。我知道 popplerQt 的一个选择,但我想使用 pdf.js 执行此操作。我不知道如何将 pdf.js 嵌入 Qt5.8。我看过 pdf.jshello world 文档,但没有帮助。请帮我。提前致谢。

最佳答案

如果您想使用 pdf.js,基本想法是使用一些小部件来显示 HTML - 似乎 QWebEngineView(使用 Chromium)可以完成所需的工作完成您的第一个实现所需的最少代码。

在您的计算机上安装了 pdf.js 并使用您的 QT Creator 准备了一个简约的 gui 应用程序(QT Widgets 项目),您可以使用以下代码来获得基础知识:

#include "mainwindow.h"
#include <QApplication>
#include <QWebEngineView>

static QString pathToPDFjs = QString("file:///path-to/pdfjs-1.8.170-dist/web/viewer.html");

int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MainWindow win;
QWebEngineView *view;
QString pdfFileURL;

//you could parse a widget to get the file name
pdfFileURL = QString("file:///path-to-your/file.pdf");

//init the view and attach it to the ui
view = new QWebEngineView();
win.setCentralWidget(view);
win.show();

//auto-load feature in pdf.js, pass file=filename as parameter
view->load(QUrl::fromUserInput(pathToPDFjs + QString("?file=") + pdfFileURL));
view->show();

return app.exec();
}

您可以从那里向您的用户界面添加额外的功能。您甚至可以对 pdf.js 的安装进行修改(如果需要)。

如果您需要在 pdf.js 上调用 JavaScript,您可以使用 View 的页面(QWebEnginePage),它又可以运行 JavaScript

Proof-of-Concept QtPDFjs

关于c++ - 在 Qt5.8 中使用 pdf.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43206263/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com