SVG ファイルのレンダリング

Qt SVG は SVG ファイルをレンダリングするためのクラスを提供します。このモジュールのクラス定義をインクルードするには、以下のディレクティブを使ってください:

#include <QtSvg>

このモジュールにリンクするには、qmake .pro ファイルにこの行を追加してください:

QT += svg

SVGファイルのレンダリング

SVG(Scalable Vector Graphics)は、2次元グラフィックスとグラフィカル・アプリケーションをXMLで記述するための言語です。SVG 1.1はW3C勧告であり、Qtにおける現在のSVG開発の中核を成しています。SVG 1.2は現在SVGワーキンググループによって開発されている仕様で、ドラフト形式で利用可能です。モバイルSVGプロファイル(SVG BasicとSVG Tiny)はリソースの限られたデバイスを対象としており、第三世代携帯電話向けの3GPPプラットフォームの一部です。SVGについて詳しくはAbout SVGをご覧ください。

Qt はSVG 1.2 Tiny静的機能をサポートしています。ECMA スクリプトと DOM 操作は現在サポートされていません。

Qt 6.7以降、SVG 1.1規格の追加機能がサポートされています。

SVG 描画は、どのQPaintDevice サブクラスにもレンダリングできます。このアプローチは開発者に柔軟性を与え、それぞれのアプリケーションに最適な解決策を見つけるための実験を可能にします。

SVGファイルをレンダリングする最も簡単な方法は、QSvgWidget を構築し、QSvgWidget::load() 関数のいずれかを使ってSVGファイルを読み込むことである。

QSvgRenderer は の SVG ファイルのレンダリングを担当するクラスで、カスタムウィジェットの SVG サポートを提供するために直接使用することができます。SVG ファイルをロードするには、ファイル名かファイルの内容で を構築するか、既存のレンダラーで () を呼び出す。SVG ファイルが正常に読み込まれた場合、 () は真を返す。QSvgWidget QSvgRenderer QSvgRenderer::load QSvgRenderer::isValid

SVG ファイルの読み込みに成功したら、QSvgRenderer::render() 関数でそれを描画できる。このスキームでは、QWidget 、QGLWidget、QImage を含む Qt がサポートするすべてのペイントデバイスで SVG ファイルをレンダリングできることに注意してください。

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