SVG ビューア

SVG ファイルをレンダリングして表示するためのQt Widgets サンプル。

この Qt SVGモジュールはSVGファイルをレンダリングするためにQPainter を使用し、この例ではレンダリングされたSVGファイルを表示するためにQt Widgets を使用する方法を示します。描画領域全体がQScrollArea の中に配置されます。このように、ユーザーがSVG画像を拡大したいとき、2つのスクロールバーが自動的に表示され、ナビゲーションが簡単になります。さらに、レンダリングされたSVGファイルをラスタライズ画像にエクスポートするオプションもある。

レンダリング

ファイルを開くには、ファイルアイコンをクリックするか、ファイルメニューから「開く」をクリックします。そして、ファイルシステムをナビゲートし、SVGファイルを選択します。 Qt SVGは、ソフトウェアレンダラーを使ってファイルの内容を描画します。これにより、ピクセルパーフェクトなアンチエイリアシングと豊富な機能が提供されます。しかし、複雑なSVGファイルの場合、CPUでかなりの処理が必要になることがあります。ハードウェアで高速化されたSVGレンダラーには、代わりにVectorImageQtでSVGファイルを読み込むさまざまな方法については、Qtの2Dグラフィックスのページを確認してください。

SVG ビューアには、現在開いている SVG ファイルを再読み込みするための更新ボタンがある。同じボタンがView メニューからも利用できます。さらに、View メニューには Auto Refreshオプションがあり、ファイルが変更されるたびに自動的に再描画を行う。

SVGビューアには3つの異なる背景オプションがある:市松模様である。これらのオプションはツールバーのアイコンか背景メニューからアクセスできる。さらに、同じメニューには、レンダリングされたSVGファイルを囲むアウトラインを有効または無効にするボタンがあります。

機能

Qt 6.7 以降、このモジュールはさらに機能を追加しました。以前はSVG Tiny 1.2のみをサポートしていました。Featuresメニューでは、これらの新機能を有効にしたり無効にしたりすることができます。例えば、レンダラーを SVG Tiny 1.2 の機能セットに制限したり、アニメーションを完全に無効にすることができます。これらの機能の詳細については、QtSvg::Option ドキュメントページを参照してください。

サンプルプロジェクト @ code.qt.io

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