![]() |
Главная · Все классы · Основные классы · Классы по группам · Модули · Функции | ![]() |
Класс QGraphicsSvgItem это QGraphicsItem, который может быть использован для отрисовки содержимого файлов SVG. Далее...
#include <QGraphicsSvgItem>
Наследует QObject и QGraphicsItem.
Класс был добавлен в Qt 4.2.
Класс QGraphicsSvgItem это QGraphicsItem, который может быть использован для отрисовки содержимого файлов SVG.
QGraphicsSvgItem предоставляет способ отрисовки файлов SVG в QGraphicsView. QGraphicsSvgItem может быть создан с помощью передачи файла SVG, который должен быть отрисован, в его конструктор или явное указание в нём общего QSvgRenderer.
Заметьте, что установка QSvgRenderer в QGraphicsSvgItem не делает его родителем отрисовщика, поэтому при использовании метода setSharedRenderer() необходимо обеспечить чтобы время жизни объекта QSvgRenderer было по крайней мере таким же как и QGraphicsSvgItem.
QGraphicsSvgItem предоставляет способ отрисовки только частей файлов SVG с помощью setElementId. Если вызван метод setElementId(), то только элемент SVG (и его потомки) с указанным id будет отрисован. Это предоставляет простой способ выборочной отрисовки больших файлов SVG, которые содержат большое число отдельных элементов. Например, следующий код отрисовывает только джокеров из файла SVG, содержащего весь набор карт:
QSvgRenderer *renderer = new QSvgRenderer(QLatin1String("SvgCardDeck.svg")); QGraphicsSvgItem *black = new QGraphicsSvgItem(); QGraphicsSvgItem *red = new QGraphicsSvgItem(); black->setSharedRenderer(renderer); black->setElementId(QLatin1String("black_joker")); red->setSharedRenderer(renderer); red->setElementId(QLatin1String("red_joker"));
Размер элемента может быть установлен с помощью метода setSize() или с помощью прямого управления матрицей преобразования элементов.
По умолчанию визуализация SVG кэшируется для ускорения отображения элементов. Кэширование может быть отключено передачей false методу setCachingEnabled().
Смотрите также QSvgWidget, Модуль QtSvg, QGraphicsItem и QGraphicsView.
Создаёт новый элемент SVG с заданным родителем parent.
Создаёт новый элемент с указанным родителем parent и загружает содержимое файла SVG с указанным именем fileName.
Возвращает ограничивающий прямоугольник этого элемента.
Переопределено из QGraphicsItem.
Возвращает XML ID элемента, который отрисовывается в данный момент. Возвращает пустую строку если отрисовывается весь файл.
Смотрите также setElementId().
Возвращает true если содержимое SVG-файла чтобы визуализатор кэшировался.
Обратите внимание на то, что кэширование не будет работать если количество кэшированных элементов превысит QPixmapCache::cacheLimit() или если текущий элемент в заданном представлении больше, чем QGraphicsSvgItem::maximumCacheSize().
Возвращает текущий максимальный размер кэша для этого элемента.
Эта функция не принимает во внимание текущую матрицу преобразования и возвращает непреобразованный размер. По-умолчанию максимальный размер кэша равен 1024x768. QPixmapCache::cacheLimit() устанавливает общие границы всего кэша, maximumCacheSize указывает на максимальный размер кэша для этого конкретного элемента.
Смотрите также setMaximumCacheSize().
Возвращает используемый в настоящее время QSvgRenderer.
Если caching равно true, то разрешается кэширование на элементе; в противном случае кэширование отключено.
По умолчанию кэширование включено. В целях повышения производительности, советуем оставить кэширование включенным. Обратите внимание на то, что кэширование не будет работать если количество кэшированных элементов превысит QPixmapCache::cacheLimit() или если текущий элемент в заданном представлении больше, чем QGraphicsSvgItem::maximumCacheSize().
Смотрите также isCachingEnabled().
Устанавливает XML ID элемента, который должен отображаться этим элементом, равным id.
Смотрите также elementId().
Устанавливает максимальный размер кэша на элементе равным size.
Эта функция не принимает во внимание текущую матрицу преобразования и устанавливает непреобразованный размер. Кэш соответствует QPixmap, который используется для кэширования результатов отрисовки. Используйте QPixmap::setCacheLimit() чтобы установить ограничения на весь кэш и setMaximumCacheSize при установке размера кэша для отдельных элементов.
Смотрите также maximumCacheSize().
Устанавливает renderer для разделения QSvgRenderer с элементом. Используя этот метод можно разделить один и тот же QSvgRenderer с несколькими элементами. Это значит что файл SVG будет прочитан только один раз. QSvgRenderer, передаваемый в этот метод, должен существовать пока используется этот элемент.
Copyright © 2008 Trolltech | Торговые марки | Qt 4.3.5 |