QSvgGenerator Class
La classe QSvgGenerator fournit un dispositif de peinture utilisé pour créer des dessins SVG. Plus d'informations...
| En-tête : | #include <QSvgGenerator> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Svg)target_link_libraries(mytarget PRIVATE Qt6::Svg) |
| qmake : | QT += svg |
| Héritages : | QPaintDevice |
- Liste de tous les membres, y compris les membres hérités
- QSvgGenerator fait partie de Painting Classes.
Remarque : toutes les fonctions de cette classe sont réentrantes.
Types publics
(since 6.5) enum class | SvgVersion { SvgTiny12, Svg11 } |
Propriétés
|
Fonctions publiques
| QSvgGenerator() | |
(since 6.5) | QSvgGenerator(QSvgGenerator::SvgVersion version) |
| virtual | ~QSvgGenerator() |
| QString | description() const |
| QString | fileName() const |
| QIODevice * | outputDevice() const |
| int | resolution() const |
| void | setDescription(const QString &description) |
| void | setFileName(const QString &fileName) |
| void | setOutputDevice(QIODevice *outputDevice) |
| void | setResolution(int dpi) |
| void | setSize(const QSize &size) |
| void | setTitle(const QString &title) |
| void | setViewBox(const QRect &viewBox) |
| void | setViewBox(const QRectF &viewBox) |
| QSize | size() const |
(since 6.5) QSvgGenerator::SvgVersion | svgVersion() const |
| QString | title() const |
| QRect | viewBox() const |
| QRectF | viewBoxF() const |
Fonctions protégées réimplémentées
(since 6.11) virtual void | initPainter(QPainter *painter) const override |
| virtual int | metric(QPaintDevice::PaintDeviceMetric metric) const override |
| virtual QPaintEngine * | paintEngine() const override |
Description détaillée
Ce périphérique de peinture représente un dessin SVG (Scalable Vector Graphics). Comme QPrinter, il est conçu comme un périphérique en écriture seule qui génère une sortie dans un format spécifique.
Pour écrire un fichier SVG, vous devez d'abord configurer la sortie en définissant les propriétés fileName ou outputDevice. Il est généralement nécessaire de spécifier la taille du dessin en définissant la propriété size, et dans certains cas où le dessin sera inclus dans un autre, la propriété viewBox doit également être définie.
QSvgGenerator generator; generator.setFileName(path); generator.setSize(QSize(200, 200)); generator.setViewBox(QRect(0, 0, 200, 200)); generator.setTitle(tr("SVG Generator Drawing")); generator.setDescription(tr("An SVG drawing created by the SVG Generator"));
D'autres métadonnées peuvent être spécifiées en définissant les propriétés title, description et resolution.
Comme pour les autres sous-classes QPaintDevice, un objet QPainter est utilisé pour peindre sur une instance de cette classe :
QPainter painter; painter.begin(&generator); ... painter.end();
La peinture s'effectue de la même manière que pour tout autre dispositif de peinture. Cependant, il est nécessaire d'utiliser QPainter::begin() et end() pour commencer et terminer explicitement la peinture sur le dispositif.
Voir également QSvgRenderer, QSvgWidget, et Qt SVG C++ Classes.
Documentation sur les types de membres
[since 6.5] enum class QSvgGenerator::SvgVersion
Cette énumération décrit la version de la sortie SVG du générateur.
| Constante | Valeur | Description |
|---|---|---|
QSvgGenerator::SvgVersion::SvgTiny12 | 0 | Le document généré suit la spécification SVG Tiny 1.2. |
QSvgGenerator::SvgVersion::Svg11 | 1 | Le document généré suit la spécification SVG 1.1. |
Cette énumération a été introduite dans Qt 6.5.
Documentation sur les propriétés
description : QString
Cette propriété contient la description du dessin SVG généré
Fonctions d'accès :
| QString | description() const |
| void | setDescription(const QString &description) |
Voir aussi title.
fileName : QString
Cette propriété contient le nom de fichier cible pour le dessin SVG généré.
Fonctions d'accès :
| QString | fileName() const |
| void | setFileName(const QString &fileName) |
Voir aussi outputDevice.
outputDevice : QIODevice*
Cette propriété indique le périphérique de sortie pour le dessin SVG généré
Si le périphérique de sortie et le nom de fichier sont tous deux spécifiés, le périphérique de sortie aura la priorité.
Fonctions d'accès :
| QIODevice * | outputDevice() const |
| void | setOutputDevice(QIODevice *outputDevice) |
Voir aussi fileName.
resolution : int
Cette propriété indique la résolution de la sortie générée
La résolution est spécifiée en points par pouce et est utilisée pour calculer la taille physique d'un dessin SVG.
Fonctions d'accès :
| int | resolution() const |
| void | setResolution(int dpi) |
Voir également size et viewBox.
size : QSize
Cette propriété indique la taille du dessin SVG généré
Par défaut, cette propriété est fixée à QSize(-1, -1), ce qui indique que le générateur ne doit pas produire les attributs de largeur et de hauteur de l'élément <svg>.
Note : Il n'est pas possible de modifier cette propriété lorsqu'une page QPainter est active sur le générateur.
Fonctions d'accès :
| QSize | size() const |
| void | setSize(const QSize &size) |
Voir également viewBox et resolution.
title : QString
Cette propriété contient le titre du dessin SVG généré
Fonctions d'accès :
| QString | title() const |
| void | setTitle(const QString &title) |
Voir aussi description.
viewBox : QRectF
Cette propriété contient la viewBox du dessin SVG généré
Par défaut, cette propriété est fixée à QRect(0, 0, -1, -1), ce qui indique que le générateur ne doit pas produire l'attribut viewBox de l'élément <svg>.
Note : Il n'est pas possible de modifier cette propriété lorsqu'une page QPainter est active sur le générateur.
Fonctions d'accès :
| QRectF | viewBoxF() const |
| void | setViewBox(const QRect &viewBox) |
| void | setViewBox(const QRectF &viewBox) |
Voir également viewBox(), size et resolution.
Documentation des fonctions membres
QSvgGenerator::QSvgGenerator()
Construit un nouveau générateur en utilisant le profil SVG Tiny 1.2.
[explicit, since 6.5] QSvgGenerator::QSvgGenerator(QSvgGenerator::SvgVersion version)
Construit un nouveau générateur qui utilise la version SVG version.
Cette fonction a été introduite dans Qt 6.5.
[virtual noexcept] QSvgGenerator::~QSvgGenerator()
Détruit le générateur.
[override virtual protected, since 6.11] void QSvgGenerator::initPainter(QPainter *painter) const
Cette fonction a été introduite dans Qt 6.11.
[override virtual protected] int QSvgGenerator::metric(QPaintDevice::PaintDeviceMetric metric) const
Réimplémente : QPaintDevice::metric(QPaintDevice::PaintDeviceMetric metric) const.
[override virtual protected] QPaintEngine *QSvgGenerator::paintEngine() const
Réimplémente : QPaintDevice::paintEngine() const.
Renvoie le moteur de peinture utilisé pour le rendu des graphiques à convertir en informations au format SVG.
[since 6.5] QSvgGenerator::SvgVersion QSvgGenerator::svgVersion() const
Retourne la version du document SVG que ce générateur est en train de produire.
Cette fonction a été introduite dans Qt 6.5.
QRect QSvgGenerator::viewBox() const
Renvoie viewBoxF().toRect().
Voir aussi setViewBox() et viewBoxF().
© 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.