QImageReader Class

QImageReader クラスは、ファイルやその他のデバイスから画像を読み込むための、フォーマットに依存しないインターフェイスを提供します。詳細...

Header: #include <QImageReader>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

注意:このクラスの関数はすべてリエントラントです。

パブリック型

enum ImageReaderError { FileNotFoundError, DeviceError, UnsupportedFormatError, InvalidDataError, UnknownError }

パブリック関数

QImageReader()
QImageReader(QIODevice *device, const QByteArray &format = QByteArray())
QImageReader(const QString &fileName, const QByteArray &format = QByteArray())
~QImageReader()
bool autoDetectImageFormat() const
bool autoTransform() const
QColor backgroundColor() const
bool canRead() const
QRect clipRect() const
int currentImageNumber() const
QRect currentImageRect() const
bool decideFormatFromContent() const
QIODevice *device() const
QImageReader::ImageReaderError error() const
QString errorString() const
QString fileName() const
QByteArray format() const
int imageCount() const
QImage::Format imageFormat() const
bool jumpToImage(int imageNumber)
bool jumpToNextImage()
int loopCount() const
int nextImageDelay() const
int quality() const
QImage read()
bool read(QImage *image)
QRect scaledClipRect() const
QSize scaledSize() const
void setAutoDetectImageFormat(bool enabled)
void setAutoTransform(bool enabled)
void setBackgroundColor(const QColor &color)
void setClipRect(const QRect &rect)
void setDecideFormatFromContent(bool ignored)
void setDevice(QIODevice *device)
void setFileName(const QString &fileName)
void setFormat(const QByteArray &format)
void setQuality(int quality)
void setScaledClipRect(const QRect &rect)
void setScaledSize(const QSize &size)
QSize size() const
QByteArray subType() const
QList<QByteArray> supportedSubTypes() const
bool supportsAnimation() const
bool supportsOption(QImageIOHandler::ImageOption option) const
QString text(const QString &key) const
QStringList textKeys() const
QImageIOHandler::Transformations transformation() const

静的パブリックメンバ

(since 6.0) int allocationLimit()
QByteArray imageFormat(QIODevice *device)
QByteArray imageFormat(const QString &fileName)
QList<QByteArray> imageFormatsForMimeType(const QByteArray &mimeType)
(since 6.0) void setAllocationLimit(int mbLimit)
QList<QByteArray> supportedImageFormats()
QList<QByteArray> supportedMimeTypes()

詳しい説明

画像を読み込む最も一般的な方法は、QImageQPixmap のコンストラクタ、あるいはQImage::load() やQPixmap::load() を呼び出すことです。QImageReader は特殊なクラスで、画像を読み込む際の制御がより容易になります。たとえば、setScaledSize() をコールすることで、画像を特定のサイズに読み込むことができます。また、setClipRect() をコールすることで、クリップ矩形を選択し、画像の一部のみを効果的に読み込むことができます。画像フォーマットの基本的なサポートにもよりますが、これによってメモリを節約し、画像の読み込みを高速化することができます。

画像を読み込むには、まず QImageReader オブジェクトを作成します。QImageReaderのコンストラクタにファイル名かデバイスポインタ、そして画像フォーマットを渡します。次に、クリップ矩形(setClipRect()を呼び出します)や拡大縮小サイズ(setScaledSize()を呼び出します)など、いくつかのオプションを設定します。canRead(QImageReader が画像を読み込める場合(つまり、画像フォーマットがサポートされており、デバイスが読み取り可能な状態である場合)、() は画像を返します。画像を読み込むには、read() を呼び出します。

画像の読み取り時にエラーが発生した場合、read() は nullQImage を返します。その後、error() をコールして発生したエラーの種類を調べたり、errorString() をコールして、何が問題だったのかを人間が読める形で説明したりすることができます。

注意: QImageReader は、割り当てられたファイルまたはデバイスの排他的な制御を想定しています。QImageReader オブジェクトの有効期間中に、割り当てられたファイルやデバイスを変更しようとすると、未定義の結果になります。

フォーマット

QImageReader が読み込めるフォーマットの一覧は、supportedImageFormats() を呼び出してください。QImageReader は、読み込みをサポートする画像形式プラグインに加えて、すべての組み込み画像形式をサポートしています。supportedMimeTypes() をコールして、サポートされている MIME タイプの一覧を取得します。この一覧は、たとえばQFileDialog::setMimeTypeFilters() に渡すことができます。

QImageReader は、デフォルトで、指定された (オプションの) フォーマット文字列、ファイル名の接尾辞、およびデータストリームの内容から画像フォーマットを自動検出します。この機能を有効または無効にするには、setAutoDetectImageFormat() をコールします。

画像の高解像度版

デバイスピクセルと デバイス非依存ピクセルの間のスケーリングが有効な場合、画像の高解像度バージョンを提供することが可能です。

高解像度バージョンは、ベースネームに@2x という接尾辞が付きます。読み込まれた画像は、デバイスピクセルの比率が2に設定されます。

これは環境変数QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING を設定することで無効にできる。

QImageWriter,QImageIOHandler,QImageIOPlugin,QMimeDatabase,QColorSpace,QImage::devicePixelRatio(),QPixmap::devicePixelRatio(),QIcon,QPainter::drawPixmap(),QPainter::drawImage()も参照のこと

メンバ型ドキュメント

enum QImageReader::ImageReaderError

この列挙型は、QImageReader で画像を読み込む際に発生する可能性のある、さまざまな種類のエラーについて記述します。

定数説明
QImageReader::FileNotFoundError1QImageReader がファイル名と一緒に使われたが、その名前のファイルが見つからなかった。これは、ファイル名に拡張子がなく、正しい拡張子のファイルが Qt でサポートされていない場合にも発生します。
QImageReader::DeviceError2QImageReader 画像の読み込み時にデバイスエラーが発生しました。何が問題だったのかの詳細については、特定のデバイスを参照してください。
QImageReader::UnsupportedFormatError3Qt は要求された画像フォーマットをサポートしていません。
QImageReader::InvalidDataError4画像データが無効で、QImageReader から画像を読み取ることができませんでした。画像ファイルが破損している場合に発生する可能性があります。
QImageReader::UnknownError0不明なエラーが発生しました。read() を呼び出した後にこの値が表示された場合は、QImageReader のバグが原因である可能性が高いです。

メンバ関数ドキュメント

QImageReader::QImageReader()

空の QImageReader オブジェクトを構築します。画像を読み込む前に、setDevice() またはsetFileName() を呼び出します。

[explicit] QImageReader::QImageReader(QIODevice *device, const QByteArray &format = QByteArray())

デバイスdevice と画像フォーマットformat を持つ QImageReader オブジェクトを構築します。

[explicit] QImageReader::QImageReader(const QString &fileName, const QByteArray &format = QByteArray())

ファイル名fileName および画像フォーマットformat を持つ QImageReader オブジェクトを構築します。

setFileName()も参照してください

[noexcept] QImageReader::~QImageReader()

QImageReader オブジェクトを破棄します。

[static, since 6.0] int QImageReader::allocationLimit()

現在の割り当て制限をメガバイト単位で返します。

この関数は Qt 6.0 で導入されました。

setAllocationLimit()も参照して ください。

bool QImageReader::autoDetectImageFormat() const

この画像リーダーで画像フォーマットの自動検出が有効になっている場合はtrue を返し、そうでない場合はfalse を返します。デフォルトでは、自動検出は有効です。

setAutoDetectImageFormat()も参照

bool QImageReader::autoTransform() const

画像ハンドラがread() で変換メタデータを適用する場合はtrue を返します。

setAutoTransform()、transformation() およびread()も参照

QColor QImageReader::backgroundColor() const

画像の読み込み時に使用する背景色を返します。画像フォーマットが背景色の設定をサポートしていない場合は、無効な色が返されます。

setBackgroundColor() およびread()も参照

bool QImageReader::canRead() const

デバイスに対して画像を読み込める場合(つまり、画像フォーマットがサポートされており、 デバイスに有効なデータがあるような場合)はtrue を返し、そうでない場合はfalse を返す。

canRead()は、画像データが有効かどうかの簡単なテストを行うだけの軽量な関数です。read画像データが破損している場合、canRead() がtrue を返した後でも、() が偽を返すことがあります。

注意: 通常、画像以外のファイルやデータの可能性を特定するには、この関数よりもQMimeDatabase を使ったルックアップの方が適しています。

アニメーションをサポートする画像の場合、canRead() は、すべてのフレームの読み込みが完了するとfalse を返します。

read(),supportedImageFormats(),QMimeDatabaseも参照

QRect QImageReader::clipRect() const

画像のクリップ矩形(ROI あるいは Region Of Interest とも呼ばれます)を返します。クリップ矩形が設定されていない場合は,無効なQRect が返されます.

setClipRect()も参照して ください。

int QImageReader::currentImageNumber() const

アニメーションをサポートしている画像フォーマットの場合、この関数は現在のフレームのシーケンス番号を返します。画像フォーマットがアニメーションをサポートしていない場合、0 が返されます。

エラーが発生した場合、この関数は -1 を返す。

supportsAnimation(),QImageIOHandler::currentImageNumber(),canRead()も参照

QRect QImageReader::currentImageRect() const

アニメーションをサポートする画像フォーマットの場合、この関数は現在のフレームのrectを返します。そうでない場合は null rect が返されます。

supportsAnimation() およびQImageIOHandler::currentImageRect()も参照

bool QImageReader::decideFormatFromContent() const

画像リーダーが、ファイル拡張子ではなくデータストリームの内容のみに基づいて使用するプラグインを決定すべきかどうかを返します。

setDecideFormatFromContent()も参照

QIODevice *QImageReader::device() const

QImageReader に現在割り当てられているデバイス、またはデバイスが割り当てられていない場合はnullptr を返す。

setDevice()も参照

QImageReader::ImageReaderError QImageReader::error() const

最後に発生したエラーの種類を返す。

ImageReaderError およびerrorString() も参照

QString QImageReader::errorString() const

最後に発生したエラーについて、人間が読める説明を返す。

error()も参照

QString QImageReader::fileName() const

現在割り当てられているデバイスがQFile 、またはsetFileName ()が呼び出されている場合、この関数はQImageReader からの読み込みファイル名を返す。そうでない場合(つまり、デバイスが割り当てられていないか、デバイスがQFile でない場合)、空のQString が返される。

setFileName() およびsetDevice()も参照

QByteArray QImageReader::format() const

QImageReader が画像の読み取りに使用しているフォーマットを返します。

リーダにデバイスを割り当てた後でこの関数を呼び出すと、デバイスのフォーマットを決定することができます。例えば

QImageReader reader("image.png");
// reader.format() == "png"

リーダがデバイスから画像を読み取れない場合(例えば、そこに画像がない、または画像が既に読み取られている)、またはフォーマットがサポートされていない場合、この関数は空のQByteArray()を返します。

setFormat() およびsupportedImageFormats()も参照

int QImageReader::imageCount() const

アニメーションをサポートしている画像フォーマットの場合、この関数はアニメーション内の画像の総数を返します。そのフォーマットがアニメーションをサポートしていない場合は、0 を返します。

エラーが発生した場合、この関数は -1 を返す。

supportsAnimation(),QImageIOHandler::imageCount(),canRead()も参照

QImage::Format QImageReader::imageFormat() const

画像の内容を実際に読み込むことなく、画像のフォーマットを返す。このフォーマットは、実際の画像のフォーマットではなく、QImageReader::read() が返す画像のフォーマットを表す。

画像フォーマットがこの機能をサポートしていない場合、この関数は無効なフォーマットを返します。

QImageIOHandler::ImageOptionQImageIOHandler::option()、QImageIOHandler::supportsOption()も参照

[static] QByteArray QImageReader::imageFormat(QIODevice *device)

サポートされている場合、この関数はデバイスdevice の画像フォーマットを返す。そうでない場合は、空の文字列が返される。

QImageReader::autoDetectImageFormat()も参照

[static] QByteArray QImageReader::imageFormat(const QString &fileName)

対応している場合、この関数はファイルfileName の画像形式を返す。そうでない場合は、空の文字列が返されます。

[static] QList<QByteArray> QImageReader::imageFormatsForMimeType(const QByteArray &mimeType)

mimeType に対応する画像フォーマットのリストを返す。

この関数を呼び出す前に、QGuiApplication インスタンスを作成しておく必要があることに注意。

supportedImageFormats() およびsupportedMimeTypes()も参照

bool QImageReader::jumpToImage(int imageNumber)

アニメーションをサポートする画像フォーマットの場合、この関数は、シーケンス番号がimageNumber である画像にスキップします。

次にread() を呼び出すと、この画像の読み込みが試行される。

jumpToNextImage() およびQImageIOHandler::jumpToImage()も参照

bool QImageReader::jumpToNextImage()

アニメーションをサポートする画像フォーマットの場合、この関数は現在の画像をステップオーバーし、成功すれば true を返し、アニメーションの次の画像がなければ false を返します。

デフォルトの実装では、read() をコールし、その結果の画像を破棄します。

jumpToImage() およびQImageIOHandler::jumpToNextImage()も参照

int QImageReader::loopCount() const

アニメーションをサポートする画像フォーマットの場合、 この関数はアニメーションのループ回数を返します。この関数が -1 を返した場合は、アニメーションが永遠にループするか、エラーが発生したことを意味します。エラーが発生した場合、canRead() は false を返します。

supportsAnimation(),QImageIOHandler::loopCount(),canRead()も参照

int QImageReader::nextImageDelay() const

アニメーションをサポートしている画像フォーマットの場合、この関数はアニメーションの次のフレームを表示するまでの待ち時間をミリ秒単位で返します。画像フォーマットがアニメーションをサポートしていない場合、0が返される。

エラーが発生した場合、この関数は -1 を返す。

supportsAnimation(),QImageIOHandler::nextImageDelay(),canRead()も参照

int QImageReader::quality() const

画像フォーマットの画質設定を返す。

setQuality() も参照

QImage QImageReader::read()

デバイスから画像を読み込みます。成功した場合は、読み込んだ画像が返され、失敗した場合は nullQImage が返されます。その後、error() をコールして発生したエラーの種類を調べたり、errorString() をコールしてエラーの説明を読み取ったりすることができる。

アニメーションをサポートする画像フォーマットの場合、read() を繰り返し呼び出すと、次のフレームが返されます。すべてのフレームが読み込まれると、NULL 画像が返されます。

canRead()、supportedImageFormats()、supportsAnimation()、QMovieも参照

bool QImageReader::read(QImage *image)

これはオーバーロードされた関数である。

デバイスから画像をimage に読み込みます。 は、QImage を指す必要があります。成功した場合はtrue を返し、そうでない場合はfalse を返します。

image が、読み込もうとしている画像データと同じフォーマットとサイズを持っている場合、この関数は、読み込む前に新しい画像を割り当てる必要がないかもしれません。こ のため、 こ の関数は、 つねに新 し い画像を構築す る 他の read() オーバーロー ド よ り も高速です。

QImage icon(64, 64, QImage::Format_RGB32);
QImageReader reader("icon_64x64.bmp");
if (reader.read(&icon)) {
    // Display icon
}

アニメーションをサポートしている画像フォーマットでは、 read() を繰り返しコールすると次のフレームが返されます。すべてのフレームの読み込みが終了すると、NULL 画像が返されます。

canRead()、supportedImageFormats()、supportsAnimation() およびQMovieも参照

QRect QImageReader::scaledClipRect() const

画像の拡大縮小されたクリップ矩形を返します。

setScaledClipRect()も参照

QSize QImageReader::scaledSize() const

画像の拡大縮小サイズを返します。

setScaledSize() も参照

[static, since 6.0] void QImageReader::setAllocationLimit(int mbLimit)

割り当ての上限をmbLimit MB に設定します。この制限を超えてQImage のメモリ割り当てを必要とする画像は拒否されます。mbLimit を 0 にすると、割り当てサイズのチェックは無効になります。

この制限は、アプリケーションが破損した画像ファイルを読み込むことで予期せぬ大きなメモリ使用量を避けるのに役立ちます。通常は変更する必要はありません。デフォルトの制限値は、一般的に使用されるすべての画像サイズに対して十分な大きさです。

実行時に、この値は環境変数QT_IMAGEIO_MAXALLOC で上書きできます。

注意: Qtは通常、GUIで使用する際に画像をその深さに変換するため、必要なメモリはピクセルあたり最小32ビットで計算されています。つまり、1 bpp や 8 bpp の画像を読み込む場合、mbLimit よりも実効的な割り当て制限はかなり小さくなります。

この関数は Qt 6.0 で導入されました。

allocationLimit()も参照してください

void QImageReader::setAutoDetectImageFormat(bool enabled)

enabled が true の場合、画像フォーマットの自動検出が有効になります。デフォルトでは、自動検出は有効です。

QImageReader まず、 にファイル名を渡すと、与えられたファイル名が既存のファイルを指していない場合、サポートされているデフォルトの拡張子を与えられたファイル名にひとつずつ追加することで、ファイル拡張子の検出を試みます。次に、以下の方法で画像フォーマットを検出します:QImageReader

  • 画像プラグインは、オプションのフォーマット文字列か、ファイル名の接尾辞(ソースデバイスがファイルの場合)のどちらかに基づいて、最初に照会されます。QImageReader は、このフォーマットの読み込みをサポートしている最初のプラグインを選択します。
  • サポートしているプラグインがない場合は、Qt の組み込みハンドラが、オプションのフォーマット文字列かファイル名の接尾辞に基づいてチェックされます。
  • 対応するプラグインや組み込みハンドラが見つからない場合は、データストリームの内容を検査して各プラグインをテストします。
  • データの内容から画像フォーマットを検出できるプラグインがない場合、各ビルトイン画像ハンドラは、内容を検査することによってテストされます。
  • 最後に、上記のアプローチがすべて失敗した場合、QImageReader 、画像を読み込もうとすると失敗が報告されます。

画像フォーマットの自動検出を無効にすることで、QImageReader は、フォーマット文字列に基づいてプラグインと組み込みハンドラに問い合わせるだけとなります(つまり、ファイル名の拡張子はテストされません)。

autoDetectImageFormat(),QImageIOHandler::canRead(),QImageIOPlugin::capabilities()も参照

void QImageReader::setAutoTransform(bool enabled)

enabledtrue の場合に、read() が返す画像に変換メタデータが自動的に適用されるようにします。

autoTransform()、transformation() およびread()も参照

void QImageReader::setBackgroundColor(const QColor &color)

背景色をcolor に設定します。 この操作をサポートする画像フォーマットは、画像を読み込む前に背景をcolor に初期化することが期待されています。

backgroundColor() およびread()も参照

void QImageReader::setClipRect(const QRect &rect)

画像のクリップ矩形(ROI,Region Of Interest としても知られる)をrect に設定します.rect の座標は,size() が返す,変換前の画像サイズからの相対座標です.

clipRect(),setScaledSize(),setScaledClipRect()も参照

void QImageReader::setDecideFormatFromContent(bool ignored)

ignored を true に設定すると、画像リーダーは指定されたフォーマットやファイル拡張子を無視し、 データストリームの内容のみに基づいて使用するプラグインを決定します。

このフラグを設定すると、すべての画像プラグインが読み込まれます。各プラグインは画像データの最初のバイトを読み込み、プラグインが互換性があるかどうかを判断します。

これは、画像フォーマットの自動検出も無効にします。

decideFormatFromContent()も参照

void QImageReader::setDevice(QIODevice *device)

QImageReader deviceすでにデバイスが設定されている場合、古いデバイスはQImageReader から削除され、それ以外は変更されない。

デバイスがまだオープンされていない場合、QImageReader は、open()を呼び出してReadOnly モードでデバイスをオープンしようとする。これは、QProcessQTcpSocketQUdpSocket など、デバイスをオープンするために多くのロジックが必要な特定のデバイスでは機能しないことに注意。

device() およびsetFileName()も参照のこと

void QImageReader::setFileName(const QString &fileName)

QImageReader のファイル名をfileName に設定します。内部的には、QImageReaderQFile オブジェクトを作成し、ReadOnly モードで開き、画像を読み込むときにこれを使用します。

fileName にファイル拡張子(.pngや.bmpなど)が含まれていない場合、QImageReader は、一致するファイルが見つかるまで、サポートされているすべての拡張子を循環させる。

fileName()、setDevice()、supportedImageFormats()も参照

void QImageReader::setFormat(const QByteArray &format)

画像を読み込む際にQImageReader が使用する書式をformat に設定します。format は、大文字小文字を区別しないテキスト文字列です。例

QImageReader reader;
reader.setFormat("png"); // same as reader.setFormat("PNG");

supportedImageFormats() をコールすると、QImageReader がサポートする書式の全リストを見ることができます。

format()も参照

void QImageReader::setQuality(int quality)

画像フォーマットの画質設定をquality に設定する。

画像フォーマットの中には、特に非可逆なものがあり、 a) 結果画像の視覚的な品質と b) デコードの実行時間との間でトレードオフが生じます。この関数は、それをサポートする画像フォーマットに対して、そのトレードオフのレベルを設定します。

スケーリングされた画像を読み取る場合、品質設定は、視覚的品質とスケーリングアルゴリズムの実行速度との間のトレードオフレベルにも影響する可能性があります。

quality の値域は画像フォーマットに依存します。例えば、"jpeg "フォーマットは、0(低画質)から100(高画質)までの画質範囲をサポートしています。

quality() およびsetScaledSize()も参照

void QImageReader::setScaledClipRect(const QRect &rect)

scaled clip rect をrect に設定します。 scaled clip rect は、 画像が拡大縮小された後に適用されるクリップ矩形 (ROI (Region Of Interest) と も呼ばれます) です。

scaledClipRect() およびsetScaledSize()も参照

void QImageReader::setScaledSize(const QSize &size)

画像のスケーリングされたサイズをsize に設定します。 スケーリングは,最初のクリップ矩形の後で,スケーリングされたクリップ矩形が適用される前に行われます。拡大縮小に使われるアルゴ リズムは,画像形式によって異なります。デフォルトでは(つまり、画像フォーマットがスケーリングをサポートしていない場合)、QImageReader は Qt::SmoothScaling を使用して QImage::scale() を使用します。

size で1つの次元しか設定されていない場合、もう1つの次元は、縦横比を維持するように、画像のnatural size から計算されます。

scaledSize(),setClipRect(),setScaledClipRect()も参照してください

QSize QImageReader::size() const

画像の内容を実際に読み込むことなく、その画像のサイズを返します。

画像フォーマットがこの機能をサポートしていない場合、この関数は無効なサイズを返します。Qtの組み込み画像ハンドラはすべてこの機能をサポートしていますが、カスタム画像フォーマットのプラグインはこの機能をサポートしている必要はありません。

QImageIOHandler::ImageOption,QImageIOHandler::option(),QImageIOHandler::supportsOption()も参照してください

QByteArray QImageReader::subType() const

画像のサブタイプを返します。

[static] QList<QByteArray> QImageReader::supportedImageFormats()

QImageReader でサポートされている画像フォーマットのリストを返します。

デフォルトでは、Qt は以下のフォーマットを読むことができます:

フォーマットMIME タイプ説明
BMPimage/bmpWindowsビットマップ
GIFイメージ/gifグラフィック交換フォーマット(オプション)
JPG画像/JPEGジョイント・フォトグラフィック・エキスパート・グループ
PNGイメージ/pngポータブルネットワークグラフィックス
PBMimage/x-portable-bitmapポータブルビットマップ
PGMポータブルグレイマップポータブルグレイマップ
PPMポータブルピクスマップポータブルピクスマップ
XBMイメージ/x-xbitmapX11ビットマップ
XPMイメージ/x-xpixmapX11 ピクスマップ
SVGimage/svg+xmlスケーラブルベクターグラフィックス

SVG ファイルの読み書きはQt SVGモジュールでサポートされています。Qt Image Formatsモジュールは追加の画像フォーマットをサポートしています。

この関数が呼ばれる前にQApplication インスタンスが生成されていなければならないことに注意してください。

setFormat(),QImageWriter::supportedImageFormats(),QImageIOPluginも参照してください

[static] QList<QByteArray> QImageReader::supportedMimeTypes()

QImageReader がサポートしている MIME タイプのリストを返します。

この関数が呼ばれる前に、QApplication インスタンスが生成されていなければならないことに注意。

supportedImageFormats() およびQImageWriter::supportedMimeTypes()も参照

QList<QByteArray> QImageReader::supportedSubTypes() const

画像でサポートされているサブタイプのリストを返します。

bool QImageReader::supportsAnimation() const

画像フォーマットがアニメーションをサポートしている場合はtrue を返し、そうでない場合は false を返します。

QMovie::supportedFormats()も参照

bool QImageReader::supportsOption(QImageIOHandler::ImageOption option) const

読者がoption をサポートしている場合はtrue を返し、そうでない場合は false を返す。

画像フォーマットによってサポートするオプションは異なります。あるオプションが現在のフォーマットでサポートされているかどうかを調べるには、この関数を呼び出します。たとえば、PNG 形式では画像のメタデータにテキストを埋め込むことができ (text() を参照)、 BMP 形式では画像全体をメモリに読み込むことなく画像のサイズを決定することができます (size() を参照)。

QImageReader reader(":/image.png");
if (reader.supportsOption(QImageIOHandler::Size))
    qDebug() << "Size:" << reader.size();

QImageWriter::supportsOption()も参照

QString QImageReader::text(const QString &key) const

key に関連付けられた画像テキストを返します。

このオプションのサポートは、QImageIOHandler::Description で実装されています。

textKeys() およびQImageWriter::setText() も参照

QStringList QImageReader::textKeys() const

この画像のテキストキーを返します。これらのキーをtext() と組み合わせて使用すると、 特定のキーの画像テキストを一覧表示することができます。

このオプションのサポートは、QImageIOHandler::Description で実装されています。

text()、QImageWriter::setText()、QImage::textKeys()も参照

QImageIOHandler::Transformations QImageReader::transformation() const

変換メタデータ 画像の向きなど、画像の変換メタデータを返します。そのフォーマットが変換メタデータをサポートしていない場合は、QImageIOHandler::TransformationNone が返されます。

setAutoTransform() およびautoTransform()も参照してください

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。