Spec-Zone.ru › Qt

Отображение файлов SVG

Qt SVG предоставляет классы для отображения файлов SVG. Чтобы включить определения классов модуля, используйте следующую директиву:

#include <QtSvg>

Чтобы связаться с модулем, добавьте эту строку в свой файл qmake .pro :

QT += svg

Отображение файлов SVG

Scalable Vector Graphics (SVG) — это язык для описания двумерной графики и графических приложений в XML. SVG 1.1 является рекомендацией W3C и формирует основу текущих разработок SVG в Qt. SVG 1.2 — это спецификация, которая в настоящее время разрабатывается группой разработки SVG, и она доступна в форме черновика. Мобильные профили SVG (SVG Basic и SVG Tiny) предназначены для устройств с ограниченными ресурсами и являются частью платформы 3GPP для мобильных телефонов третьего поколения. Вы можете узнать больше об SVG на странице О SVG.

Qt поддерживает статические функции SVG 1.2 Tiny. ECMA скрипты и манипуляции DOM в настоящее время не поддерживаются.

Изображения SVG могут быть отображены на любом подклассе QPaintDevice. Этот подход предоставляет разработчикам гибкость для экспериментов, чтобы найти лучшее решение для каждого приложения.

Самый простой способ отобразить файлы SVG — создать QSvgWidget и загрузить файл SVG, используя одну из функций QSvgWidget::load().

QSvgRenderer — это класс, отвечающий за отображение файлов SVG для QSvgWidget, и его можно использовать непосредственно для обеспечения поддержки SVG для пользовательских виджетов. Для загрузки файла SVG создайте QSvgRenderer с именем файла или содержимым файла, или вызовите QSvgRenderer::load() для существующего рендерера. Если файл SVG загружен успешно, QSvgRenderer::isValid() вернёт true.

После успешной загрузки файла SVG, вы можете отобразить его с помощью функции QSvgRenderer::render(). Обратите внимание, что эта схема позволяет отображать файлы SVG на всех устройствах отрисовки, поддерживаемых Qt, включая QWidget, QGLWidget и QImage. Более подробную информацию см. в примере SVG Viewer.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/svgrendering.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API