Qt Image Formats
Qt GUI のコアライブラリは、デフォルトで最も一般的なファイル形式の画像ファイルの読み書きをサ ポートしています:PNG
JPEG
Reading and Writing Image Files, , と、その他いくつかのファイル形式をサポートしています。 アドオンモジュールは、その他の画像ファイル形式をオプションでサポートしています。BMP
GIF
Qt Image Formats
ファイルフォーマットのサポートは、Qt の Image I/O システムのプラグインを通して透過的に提供されます。そのため、このモジュールは独自のAPIを提供しません。その代わり、Qt の他の画像入出力と同じように、QImage::load() やQImage::save() からアクセスできます。また、より詳細な制御には、QImageReader とQImageWriter を使ってください。
画像入出力プラグイン
ファイルフォーマットの実際の符号化と復号化は、コーデック・ライブラリによって行われます。コーデックはQtまたはサードパーティのコードです。サードパーティのコーデックの場合、ビルド・プロセスはシステム・ライブラリの中からコーデックを探します。見つからない場合は、バンドルされているコピー(src/3rdparty
)を使用することになります。
形式 | 説明 | サポート | サードパーティーコーデック |
---|---|---|---|
HEIC | 高効率ビデオコーディング | 非対応 | |
- アップルのオペレーティングシステムでは | 読み書き | はい、OS内蔵 | |
ICNS | アップル・アイコン・イメージ | 読み書き | 不可 |
JP2 | ジョイント・フォトグラフィック・エキスパート・グループ2000 | 読み書き | あり(バンドルされていない) |
- Appleオペレーティングシステム上 | 読み書き | OS内蔵 | |
MNG | 複数画像ネットワーク・グラフィックス | 読み込み | あり(バンドルされていない) |
TGA | Truevisionグラフィックス・アダプタ | 読み取り | いいえ |
TIFF | タグ付き画像ファイルフォーマット | 読み取り/書き込み | あり(バンドル) |
WBMP | ワイヤレスビットマップ | 読み書き | なし |
ウェブP | ウェブP | 読み書き | あり(バンドル) |
注: バンドルされているサードパーティコーデックの中には、メンテナンスが終了しているものもあります。これらは手動ビルドのためだけに提供されており、システムライブラリが利用できない場合のフォールバックとしては使用されません。
注意 : セキュリティ上の理由から、Qt 5.8 以降、Direct Draw Surface (DDS) ハンドラはデフォルトではビルドされません。このハンドラが必要な場合は、ソースプロジェクトからビルドしてください。
配置
ビルドされると、Qt Image Formats プラグインは、デフォルトのイメージフォーマットプラグインと一緒に、ランタイムプラグインディレクトリ(通常はplugins/imageformats
)にダイナミックライブラリとして配置されます。プラグインは、他のプラグインと同じようにターゲット・システムにデプロイできます。プラグインのデプロイのドキュメントを参照してください。
ライセンスと帰属
Qt Image Formats プラグインはThe Qt Company の商用ライセンスで利用できます。さらに、GNU Lesser General Public License, version 3 またはGNU General Public License, version 2 の下でも利用可能です。詳細はQt ライセンスを参照してください。
さらに、Qt Image Formats 、以下の寛容なライセンスのサードパーティモジュールが含まれている可能性があります:
libtiffライセンス | |
BSD 3条項「新規」または「改訂」ライセンス |
セキュリティに関する考察
これらのファイルフォーマットはめったに使われないので、コーデックは潜在的なセキュリティホールに対してあまり徹底的にデバッグされていないかもしれません。いつものように、制御されていないデータファイルをデコードするために使われる可能性のあるアプリケーションを作成するときには、注意が必要です。
© 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.