I want to create a simple PDF Viewer inside my Qt Application. Everything works fine, accept opening the PDF at a specific page over the URL. For example:
url = "file:///D://Repo//PdfViewer//PdfViewer//test.pdf";
Works, but
url = "file:///D://Repo//PdfViewer//PdfViewer//test.pdf#page=9";
dosent. I read somewhere, that chrome dosent offically support #page=x anymore, but I cant find futher information how to solve this. I face the same problem with this url in the Nano-Browser Example from Qt.
PdfViewer::PdfViewer(const QString &pdf_path, QWidget *parent)
: QWidget(parent), m_View(new QWebEngineView(this)), m_ExitButton(new QPushButton())
{
QUrl url = QUrl::fromLocalFile(pdf_path);
m_View->settings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
m_View->settings()->setAttribute(QWebEngineSettings::FullScreenSupportEnabled, true);
m_View->settings()->setAttribute(QWebEngineSettings::PdfViewerEnabled, true);
m_View->load(url);
m_ExitButton->setIcon(QIcon("Ok.png"));
QVBoxLayout *layout = new QVBoxLayout();
layout->addWidget(m_View);
layout->addWidget(m_ExitButton);
this->setLayout(layout);
connect(m_ExitButton, &QPushButton::clicked, this, &PdfViewer::close);
}
I am using Qt 5.13.