Déformation vectorielle

Démontre comment manipuler les éléments d'un site QPainterPath.

Application montrant différents paramètres de déformation vectorielle

Nous définissons un champ de déformation vectorielle sous la forme d'une lentille et l'appliquons à tous les points d'un chemin. Cela signifie que ce qui est rendu à l'écran n'est pas une manipulation de pixels, mais des représentations vectorielles modifiées des glyphes eux-mêmes. Ceci est visible dans la haute qualité des bords anticrénelés des glyphes déformés.

Pour obtenir un chemin assez complexe, nous permettons à l'utilisateur de taper du texte et de le convertir en chemins. Cela se fait à l'aide de la fonction QPainterPath::addText().

La lentille est dessinée à l'aide d'un seul appel à QPainter::drawEllipse(), en utilisant QRadialGradient pour la remplir avec une table de couleurs spécialisée, donnant l'effet de la réflexion du soleil et d'une ombre portée. La lentille est mise en cache en tant que pixmap pour de meilleures performances.

Exemple de projet @ code.qt.io

© 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.