Renders pages from PDF documents.
The Qt PDF module contains classes and functions for rendering PDF documents. The
QPdfDocument class loads a PDF document and renders pages from it according to the options provided by the
QPdfDocumentRenderOptions class. The
QPdfPageRenderer class manages a queue that collects all render requests. The
QPdfPageNavigator class handles the navigation through a PDF document. The
QPdfSearchModel class searches for a string and holds the search results. The
QPdfBookmarkModel class holds the table of contents, if present. The QPdfLinkModel holds information about hyperlinks on a page. The
QPdfView widget is a complete PDF viewer, and the PDF Viewer Example shows how to use it.
For Qt Quick applications, three kinds of full-featured viewer components are provided. PdfMultiPageView should be your first choice for the most common user experience: flicking through the pages in the entire document. PdfScrollablePageView shows one page at a time, with scrolling; and PdfPageView shows one full page at a time, without scrolling.
The full-featured viewer components are composed of lower-level QML components that can be used separately if you need to write a more customized PDF viewing application: PdfDocument , PdfPageImage , PdfPageNavigator , PdfSelection , PdfSearchModel , PdfLinkModel , and PdfBookmarkModel .
If you only need to render page images, without features such as text selection, search and navigation, this module includes a
QImageIOHandler plugin that treats PDF as a scalable image format, similar to SVG . You can simply use Image , and set the currentFrame property to the page index that you wish to display. If the PDF file does not render its own background, the image has a transparent background.
Using the Module#
Using a Qt module requires linking against the module library, either directly or through other dependencies. Several build tools have dedicated support for this, including CMake and qmake .
Building with CMake#
find_package() command to locate the needed module components in the
<Code snippet "/data/snapshot-qt5full-6.4/qt5/qtbase/qtpdf-build.cmake" not found>
See also the Build with CMake overview.
Building with qmake#
To link against the module, add this line to your qmake project file:
QT += pdf