QPdfDocument Class
The QPdfDocument class loads a PDF document and renders pages from it. More...
Header: | #include <QPdfDocument> |
Since: | Qt 5.10 |
Inherits: | QObject |
Public Types
enum | DocumentError { NoError, UnknownError, DataNotYetAvailableError, FileNotFoundError, InvalidFileFormatError, …, UnsupportedSecuritySchemeError } |
enum | MetaDataField { Title, Author, Subject, Keywords, Creator, …, ModificationDate } |
enum | Status { Null, Loading, Ready, Unloading, Error } |
Properties
Public Functions
QPdfDocument(QObject *parent) | |
virtual | ~QPdfDocument() |
void | close() |
QPdfDocument::DocumentError | error() const |
QPdfSelection | getAllText(int page) |
QPdfSelection | getSelection(int page, QPointF start, QPointF end) |
QPdfSelection | getSelectionAtIndex(int page, int startIndex, int maxLength) |
QPdfDocument::DocumentError | load(const QString &fileName) |
void | load(QIODevice *device) |
QVariant | metaData(QPdfDocument::MetaDataField field) const |
int | pageCount() const |
QSizeF | pageSize(int page) const |
QString | password() const |
QImage | render(int page, QSize imageSize, QPdfDocumentRenderOptions renderOptions = QPdfDocumentRenderOptions()) |
void | setPassword(const QString &password) |
QPdfDocument::Status | status() const |
Signals
void | pageCountChanged(int pageCount) |
void | passwordChanged() |
void | statusChanged(QPdfDocument::Status status) |
Detailed Description
Member Type Documentation
enum QPdfDocument::DocumentError
This enum describes the error while attempting the last operation on the document.
Constant | Value | Description |
---|---|---|
QPdfDocument::NoError | 0 | No error occurred. |
QPdfDocument::UnknownError | 1 | Unknown type of error. |
QPdfDocument::DataNotYetAvailableError | 2 | The document is still loading, it's too early to attempt the operation. |
QPdfDocument::FileNotFoundError | 3 | The file given to load() was not found. |
QPdfDocument::InvalidFileFormatError | 4 | The file given to load() is not a valid PDF file. |
QPdfDocument::IncorrectPasswordError | 5 | The password given to setPassword() is not correct for this file. |
QPdfDocument::UnsupportedSecuritySchemeError | 6 | QPdfDocument is not able to unlock this kind of PDF file. |
See also QPdfDocument::error().
enum QPdfDocument::MetaDataField
This enum describes the available fields of meta data.
Constant | Value | Description |
---|---|---|
QPdfDocument::Title | 0 | The document's title as QString. |
QPdfDocument::Author | 2 | The name of the person who created the document as QString. |
QPdfDocument::Subject | 1 | The subject of the document as QString. |
QPdfDocument::Keywords | 3 | Keywords associated with the document as QString. |
QPdfDocument::Creator | 5 | If the document was converted to PDF from another format, the name of the conforming product that created the original document from which it was converted as QString. |
QPdfDocument::Producer | 4 | If the document was converted to PDF from another format, the name of the conforming product that converted it to PDF as QString. |
QPdfDocument::CreationDate | 6 | The date and time the document was created as QDateTime. |
QPdfDocument::ModificationDate | 7 | The date and time the document was most recently modified as QDateTime. |
See also QPdfDocument::metaData().
enum QPdfDocument::Status
This enum describes the current status of the document.
Constant | Value | Description |
---|---|---|
QPdfDocument::Null | 0 | The initial status after the document has been created or after it has been closed. |
QPdfDocument::Loading | 1 | The status after load() has been called and before the document is fully loaded. |
QPdfDocument::Ready | 2 | The status when the document is fully loaded and its data can be accessed. |
QPdfDocument::Unloading | 3 | The status after close() has been called on an open document. At this point the document is still valid and all its data can be accessed. |
QPdfDocument::Error | 4 | The status after Loading, if loading has failed. |
See also QPdfDocument::status().
Property Documentation
[read-only]
pageCount : const int
This property holds the number of pages in the loaded document or 0
if no document is loaded.
Access functions:
int | pageCount() const |
Notifier signal:
void | pageCountChanged(int pageCount) |
password : QString
This property holds the document password.
If the document is protected by a password, the user must provide it, and the application must set this property. Otherwise, it's not needed.
Access functions:
QString | password() const |
void | setPassword(const QString &password) |
Notifier signal:
void | passwordChanged() |
[read-only]
status : const Status
This property holds the current status of the document.
Access functions:
QPdfDocument::Status | status() const |
Notifier signal:
void | statusChanged(QPdfDocument::Status status) |
Member Function Documentation
QPdfDocument::QPdfDocument(QObject *parent)
Constructs a new document with parent object parent.
[virtual]
QPdfDocument::~QPdfDocument()
Destroys the document.
void QPdfDocument::close()
Closes the document.
QPdfDocument::DocumentError QPdfDocument::error() const
Returns the type of error if status is Error
, or NoError
if there is no error.
[invokable]
QPdfSelection QPdfDocument::getAllText(int page)
Returns all the text and its bounds on the given page.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
[invokable]
QPdfSelection QPdfDocument::getSelection(int page, QPointF start, QPointF end)
Returns information about the text on the given page that can be found between the given start and end points, if any.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
[invokable]
QPdfSelection QPdfDocument::getSelectionAtIndex(int page, int startIndex, int maxLength)
Returns information about the text on the given page that can be found beginning at the given startIndex with at most maxLength characters.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
QPdfDocument::DocumentError QPdfDocument::load(const QString &fileName)
Loads the document contents from fileName.
void QPdfDocument::load(QIODevice *device)
Loads the document contents from device.
QVariant QPdfDocument::metaData(QPdfDocument::MetaDataField field) const
Returns the meta data of the document for the given field.
QSizeF QPdfDocument::pageSize(int page) const
Returns the size of page page in points (1/72 of an inch).
QImage QPdfDocument::render(int page, QSize imageSize, QPdfDocumentRenderOptions renderOptions = QPdfDocumentRenderOptions())
Renders the page into a QImage of size imageSize according to the provided renderOptions.
Returns the rendered page or an empty image in case of an error.
Note: If the imageSize does not match the aspect ratio of the page in the PDF document, the page is rendered scaled, so that it covers the complete imageSize.