Sur cette page

QPrintEngine Class

La classe QPrintEngine définit une interface permettant à QPrinter d'interagir avec un sous-système d'impression donné. Plus d'informations...

En-tête : #include <QPrintEngine>
CMake : find_package(Qt6 REQUIRED COMPONENTS PrintSupport)
target_link_libraries(mytarget PRIVATE Qt6::PrintSupport)
qmake : QT += printsupport

Remarque : toutes les fonctions de cette classe sont réentrantes.

Types publics

enum PrintEnginePropertyKey { PPK_CollateCopies, PPK_ColorMode, PPK_Creator, PPK_Duplex, PPK_DocumentName, …, PPK_CustomBase }

Fonctions publiques

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

Description détaillée

Lorsque vous créez votre propre moteur d'impression, il est courant de dériver des classes QPaintEngine et QPrintEngine. Diverses propriétés d'un moteur d'impression sont données avec property() et définies avec setProperty().

Voir également QPaintEngine.

Documentation sur les types de membres

enum QPrintEngine::PrintEnginePropertyKey

Cette énumération est utilisée pour communiquer des propriétés entre le moteur d'impression et QPrinter. Une propriété peut ou non être prise en charge par un moteur d'impression donné.

ConstanteValeurDescription
QPrintEngine::PPK_CollateCopies0Valeur booléenne indiquant si l'impression doit être assemblée ou non.
QPrintEngine::PPK_ColorMode1Se réfère à QPrinter::ColorMode, en couleur ou en monochrome.
QPrintEngine::PPK_Creator2Chaîne décrivant le créateur du document.
QPrintEngine::PPK_Duplex20Une valeur booléenne indiquant si les deux côtés du papier de l'imprimante doivent être utilisés pour l'impression.
QPrintEngine::PPK_DocumentName3Une chaîne décrivant le nom du document dans le spooler.
QPrintEngine::PPK_FontEmbedding19Une valeur booléenne indiquant si les données relatives aux polices du document doivent être intégrées dans les données envoyées à l'imprimante.
QPrintEngine::PPK_FullPage4Un booléen décrivant si l'imprimante doit être pleine page ou non.
QPrintEngine::PPK_NumberOfCopies5Obsolète. Un nombre entier spécifiant le nombre de copies. Utilisez PPK_CopyCount à la place.
QPrintEngine::PPK_Orientation6Spécifie une valeur QPageLayout::Orientation.
QPrintEngine::PPK_OutputFileName7Le nom du fichier de sortie sous forme de chaîne de caractères. Un nom de fichier vide indique que l'imprimante ne doit pas imprimer dans un fichier.
QPrintEngine::PPK_PageOrder8Spécifie une valeur QPrinter::PageOrder.
QPrintEngine::PPK_PageRect9Une valeur QRect spécifiant le rectangle de la page
QPrintEngine::PPK_PageSize10Obsolète. Utilisez PPK_PaperSize à la place.
QPrintEngine::PPK_PaperRect11A QRect spécifiant le rectangle de papier.
QPrintEngine::PPK_PaperSource12Spécifie une valeur QPrinter::PaperSource.
QPrintEngine::PPK_PaperSources21Spécifie plusieurs valeurs QPrinter::PaperSource.
QPrintEngine::PPK_PaperName26Une chaîne de caractères spécifiant le nom du papier.
QPrintEngine::PPK_PaperSizePPK_PageSizeSpécifie une valeur QPrinter::PaperSize.
QPrintEngine::PPK_PrinterName13Une chaîne de caractères spécifiant le nom de l'imprimante.
QPrintEngine::PPK_PrinterProgram14Une chaîne de caractères spécifiant le nom du programme d'impression utilisé pour l'impression,
QPrintEngine::PPK_Resolution15Un nombre entier décrivant le nombre de points par pouce pour cette imprimante.
QPrintEngine::PPK_SelectionOption16
QPrintEngine::PPK_SupportedResolutions17Une liste d'entiers QVariants décrivant l'ensemble des résolutions prises en charge par l'imprimante.
QPrintEngine::PPK_WindowsPageSize18Un nombre entier spécifiant une entrée DM_PAPER sous Windows.
QPrintEngine::PPK_CustomPaperSize22Un QSizeF spécifiant un format de papier personnalisé dans l'unité QPrinter::Point.
QPrintEngine::PPK_PageMargins23Un QList<QVariant> contenant les valeurs des marges gauche, supérieure, droite et inférieure dans l'unité QPrinter::Point.
QPrintEngine::PPK_CopyCount24Un nombre entier indiquant le nombre de copies à imprimer.
QPrintEngine::PPK_SupportsMultipleCopies25Une valeur booléenne indiquant si l'imprimante prend en charge ou non l'impression de plusieurs copies en un seul travail.
QPrintEngine::PPK_QPageSize27Définissez la taille de la page à l'aide d'un objet QPageSize.
QPrintEngine::PPK_QPageMargins28Définissez les marges de la page à l'aide d'une std::paire de QMarginsF et QPageLayout::Unit.
QPrintEngine::PPK_QPageLayout29Définir la mise en page à l'aide d'un objet QPageLayout.
QPrintEngine::PPK_CustomBase0xff00Base pour l'extension.

Documentation des fonctions membres

[virtual noexcept] QPrintEngine::~QPrintEngine()

Détruit le moteur d'impression.

[pure virtual] bool QPrintEngine::abort()

Demande au moteur d'impression d'interrompre le processus d'impression. Retourne vrai en cas de succès, sinon il retourne false.

[pure virtual] int QPrintEngine::metric(QPaintDevice::PaintDeviceMetric id) const

Renvoie la métrique pour l'adresse id donnée.

[pure virtual] bool QPrintEngine::newPage()

Demande au moteur d'impression de commencer une nouvelle page. Renvoie true si l'imprimante a pu créer la nouvelle page, sinon renvoie false.

[pure virtual] QPrinter::PrinterState QPrintEngine::printerState() const

Renvoie l'état actuel de l'imprimante utilisée par le moteur d'impression.

[pure virtual] QVariant QPrintEngine::property(QPrintEngine::PrintEnginePropertyKey key) const

Renvoie la propriété du moteur d'impression spécifiée par key.

Voir aussi setProperty().

[pure virtual] void QPrintEngine::setProperty(QPrintEngine::PrintEnginePropertyKey key, const QVariant &value)

Définit la propriété du moteur d'impression spécifiée par key à la valeur donnée value.

Voir aussi property().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.