Depuis lors, ce petit projet est arrivé à un certain degré de maturité : il est maintenant possible d’afficher un PDF, mais aussi d’y naviguer, de définir les paramètres d’affichage (vue page par page ou continue, par exemple), le tout en C++, grâce à la classe QPdfView. Tout le rendu est effectué dans un fil d’exécution séparé, ce qui évite de bloquer l’interface graphique.
Pour le moment, QPdfView et le module Qt PDF ne sont utilisables qu’en C++ dans des applications à base de widgets. L’installation est raisonnablement facile :
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 | git clone git://code.qt.io/qt-labs/qtpdf cd qtpdf git submodule update --init --recursive qmake make cd examples/pdf/pdfviewer qmake make ./pdfviewer |
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 | #include <QPdfDocument> #include <QPdfView> QPdfDocument *document = new QPdfDocument; document->load("document.pdf"); QPdfView *view = new QPdfView; view->setDocument(document); view->show(); |
Pour ses prochaines versions,Qt PDF devrait commencer par mettre à jour sa version de PDFium, une opération rendue plus compliquée que prévu à cause de changements dans le système de compilation de la bibliothèque (un passage de Gyp à GN, qu’il faut à nouveau interfacer avec qmake).
En sus, certaines fonctionnalités ne sont pas encore disponibles, comme les liens et la navigation vers des sections du document. Également, il faut encore y ajouter une interface Qt Quick… et peaufiner la documentation.
Source : Browse PDFs in a Qt Widgets application.
Voir aussi : le ticket de suivi.