QPrintEngine Class
The QPrintEngine class defines an interface for how QPrinter interacts with a given printing subsystem. More...
Header: | #include <QPrintEngine> |
CMake: | find_package(Qt6 COMPONENTS PrintSupport REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::PrintSupport) |
qmake: | QT += printsupport |
Note: All functions in this class are reentrant.
Public Types
enum | PrintEnginePropertyKey { PPK_CollateCopies, PPK_ColorMode, PPK_Creator, PPK_Duplex, PPK_DocumentName, …, PPK_CustomBase } |
Public Functions
virtual | ~QPrintEngine() |
virtual bool | abort() = 0 |
virtual int | metric(QPaintDevice::PaintDeviceMetric id) const = 0 |
virtual bool | newPage() = 0 |
virtual QPrinter::PrinterState | printerState() const = 0 |
virtual QVariant | property(QPrintEngine::PrintEnginePropertyKey key) const = 0 |
virtual void | setProperty(QPrintEngine::PrintEnginePropertyKey key, const QVariant &value) = 0 |
Detailed Description
The common case when creating your own print engine is to derive from both QPaintEngine and QPrintEngine. Various properties of a print engine are given with property() and set with setProperty().
See also QPaintEngine.
Member Type Documentation
enum QPrintEngine::PrintEnginePropertyKey
This enum is used to communicate properties between the print engine and QPrinter. A property may or may not be supported by a given print engine.
Constant | Value | Description |
---|---|---|
QPrintEngine::PPK_CollateCopies |
0 |
A boolean value indicating whether the printout should be collated or not. |
QPrintEngine::PPK_ColorMode |
1 |
Refers to QPrinter::ColorMode, either color or monochrome. |
QPrintEngine::PPK_Creator |
2 |
A string describing the document's creator. |
QPrintEngine::PPK_Duplex |
20 |
A boolean value indicating whether both sides of the printer paper should be used for the printout. |
QPrintEngine::PPK_DocumentName |
3 |
A string describing the document name in the spooler. |
QPrintEngine::PPK_FontEmbedding |
19 |
A boolean value indicating whether data for the document's fonts should be embedded in the data sent to the printer. |
QPrintEngine::PPK_FullPage |
4 |
A boolean describing if the printer should be full page or not. |
QPrintEngine::PPK_NumberOfCopies |
5 |
Obsolete. An integer specifying the number of copies. Use PPK_CopyCount instead. |
QPrintEngine::PPK_Orientation |
6 |
Specifies a QPageLayout::Orientation value. |
QPrintEngine::PPK_OutputFileName |
7 |
The output file name as a string. An empty file name indicates that the printer should not print to a file. |
QPrintEngine::PPK_PageOrder |
8 |
Specifies a QPrinter::PageOrder value. |
QPrintEngine::PPK_PageRect |
9 |
A QRect specifying the page rectangle |
QPrintEngine::PPK_PageSize |
10 |
Obsolete. Use PPK_PaperSize instead. |
QPrintEngine::PPK_PaperRect |
11 |
A QRect specifying the paper rectangle. |
QPrintEngine::PPK_PaperSource |
12 |
Specifies a QPrinter::PaperSource value. |
QPrintEngine::PPK_PaperSources |
21 |
Specifies more than one QPrinter::PaperSource value. |
QPrintEngine::PPK_PaperName |
26 |
A string specifying the name of the paper. |
QPrintEngine::PPK_PaperSize |
PPK_PageSize |
Specifies a QPrinter::PaperSize value. |
QPrintEngine::PPK_PrinterName |
13 |
A string specifying the name of the printer. |
QPrintEngine::PPK_PrinterProgram |
14 |
A string specifying the name of the printer program used for printing, |
QPrintEngine::PPK_Resolution |
15 |
An integer describing the dots per inch for this printer. |
QPrintEngine::PPK_SelectionOption |
16 |
|
QPrintEngine::PPK_SupportedResolutions |
17 |
A list of integer QVariants describing the set of supported resolutions that the printer has. |
QPrintEngine::PPK_WindowsPageSize |
18 |
An integer specifying a DM_PAPER entry on Windows. |
QPrintEngine::PPK_CustomPaperSize |
22 |
A QSizeF specifying a custom paper size in the QPrinter::Point unit. |
QPrintEngine::PPK_PageMargins |
23 |
A QList<QVariant> containing the left, top, right and bottom margin values in the QPrinter::Point unit. |
QPrintEngine::PPK_CopyCount |
24 |
An integer specifying the number of copies to print. |
QPrintEngine::PPK_SupportsMultipleCopies |
25 |
A boolean value indicating whether or not the printer supports printing multiple copies in one job. |
QPrintEngine::PPK_QPageSize |
27 |
Set the page size using a QPageSize object. |
QPrintEngine::PPK_QPageMargins |
28 |
Set the page margins using a QPair of QMarginsF and QPageLayout::Unit. |
QPrintEngine::PPK_QPageLayout |
29 |
Set the page layout using a QPageLayout object. |
QPrintEngine::PPK_CustomBase |
0xff00 |
Basis for extension. |
Member Function Documentation
[virtual]
QPrintEngine::~QPrintEngine()
Destroys the print engine.
[pure virtual]
bool QPrintEngine::abort()
Instructs the print engine to abort the printing process. Returns true if successful; otherwise returns false
.
[pure virtual]
int QPrintEngine::metric(QPaintDevice::PaintDeviceMetric id) const
Returns the metric for the given id.
[pure virtual]
bool QPrintEngine::newPage()
Instructs the print engine to start a new page. Returns true
if the printer was able to create the new page; otherwise returns false
.
[pure virtual]
QPrinter::PrinterState QPrintEngine::printerState() const
Returns the current state of the printer being used by the print engine.
[pure virtual]
QVariant QPrintEngine::property(QPrintEngine::PrintEnginePropertyKey key) const
Returns the print engine's property specified by key.
See also setProperty().
[pure virtual]
void QPrintEngine::setProperty(QPrintEngine::PrintEnginePropertyKey key, const QVariant &value)
Sets the print engine's property specified by key to the given value.
See also property().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qprintengine.html