|  | Home · Overviews · Examples |

# QGraphicsSvgItem Class Reference
[com.trolltech.qt.svg module]

The `QGraphicsSvgItem` class is a `QGraphicsItem` that can be used to render the contents of SVG files. More...

Inherits `QObject` and `QObject`.

## Detailed Description

The `QGraphicsSvgItem` class is a `QGraphicsItem` that can be used to render the contents of SVG files.

`QGraphicsSvgItem` provides a way of rendering SVG files onto `QGraphicsView`. `QGraphicsSvgItem` can be created by passing the SVG file to be rendered to its constructor or by explicit setting a shared `QSvgRenderer` on it.

Note that setting `QSvgRenderer` on a `QGraphicsSvgItem` doesn't make the item take ownership of the renderer, therefore if using `setSharedRenderer` method one has to make sure that the lifetime of the `QSvgRenderer` object will be at least as long as that of the `QGraphicsSvgItem`.

`QGraphicsSvgItem` provides a way of rendering only parts of the SVG files via the `setElementId`. If `setElementId` method is called, only the SVG element (and its children) with the passed id will be renderer. This provides a convenient way of selectively rendering large SVG files that contain a number of discrete elements. For example the following code renders only jokers from a SVG file containing a whole card deck:

        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"));

Size of the item can be set via the setSize() method or via direct manipulation of the items transformation matrix.

By default the SVG rendering is cached to speedup the display of items. Caching can be disabled by passing false to the `setCachingEnabled` method.

See also `QSvgWidget`, `QtSvg Module`, `QGraphicsItem`, and `QGraphicsView`.