QColor Class

QColor クラスは、RGB、HSV、または CMYK 値に基づく色を提供します。詳細...

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

パブリック型

enum NameFormat { HexRgb, HexArgb }
enum Spec { Rgb, Hsv, Cmyk, Hsl, ExtendedRgb, Invalid }

パブリック関数

QColor()
QColor(QRgb color)
QColor(QRgba64 rgba64)
QColor(const QString &name)
QColor(int r, int g, int b, int a = 255)
QColor(QLatin1StringView name)
QColor(Qt::GlobalColor color)
QColor(const char *name)
int alpha() const
float alphaF() const
int black() const
float blackF() const
int blue() const
float blueF() const
QColor convertTo(QColor::Spec colorSpec) const
int cyan() const
float cyanF() const
QColor darker(int factor = 200) const
void getCmyk(int *c, int *m, int *y, int *k, int *a = nullptr) const
void getCmykF(float *c, float *m, float *y, float *k, float *a = nullptr) const
void getHsl(int *h, int *s, int *l, int *a = nullptr) const
void getHslF(float *h, float *s, float *l, float *a = nullptr) const
void getHsv(int *h, int *s, int *v, int *a = nullptr) const
void getHsvF(float *h, float *s, float *v, float *a = nullptr) const
void getRgb(int *r, int *g, int *b, int *a = nullptr) const
void getRgbF(float *r, float *g, float *b, float *a = nullptr) const
int green() const
float greenF() const
int hslHue() const
float hslHueF() const
int hslSaturation() const
float hslSaturationF() const
int hsvHue() const
float hsvHueF() const
int hsvSaturation() const
float hsvSaturationF() const
int hue() const
float hueF() const
bool isValid() const
QColor lighter(int factor = 150) const
int lightness() const
float lightnessF() const
int magenta() const
float magentaF() const
QString name(QColor::NameFormat format = HexRgb) const
int red() const
float redF() const
QRgb rgb() const
QRgba64 rgba64() const
QRgb rgba() const
int saturation() const
float saturationF() const
void setAlpha(int alpha)
void setAlphaF(float alpha)
void setBlue(int blue)
void setBlueF(float blue)
void setCmyk(int c, int m, int y, int k, int a = 255)
void setCmykF(float c, float m, float y, float k, float a = 1.0)
void setGreen(int green)
void setGreenF(float green)
void setHsl(int h, int s, int l, int a = 255)
void setHslF(float h, float s, float l, float a = 1.0)
void setHsv(int h, int s, int v, int a = 255)
void setHsvF(float h, float s, float v, float a = 1.0)
void setRed(int red)
void setRedF(float red)
void setRgb(int r, int g, int b, int a = 255)
void setRgb(QRgb rgb)
void setRgba64(QRgba64 rgba)
void setRgbF(float r, float g, float b, float a = 1.0)
void setRgba(QRgb rgba)
QColor::Spec spec() const
QColor toCmyk() const
QColor toExtendedRgb() const
QColor toHsl() const
QColor toHsv() const
QColor toRgb() const
int value() const
float valueF() const
int yellow() const
float yellowF() const
QVariant operator QVariant() const
bool operator!=(const QColor &color) const
QColor &operator=(Qt::GlobalColor color)
bool operator==(const QColor &color) const

静的パブリックメンバ

QStringList colorNames()
QColor fromCmyk(int c, int m, int y, int k, int a = 255)
QColor fromCmykF(float c, float m, float y, float k, float a = 1.0)
QColor fromHsl(int h, int s, int l, int a = 255)
QColor fromHslF(float h, float s, float l, float a = 1.0)
QColor fromHsv(int h, int s, int v, int a = 255)
QColor fromHsvF(float h, float s, float v, float a = 1.0)
QColor fromRgb(QRgb rgb)
QColor fromRgb(int r, int g, int b, int a = 255)
QColor fromRgba64(QRgba64 rgba64)
QColor fromRgba64(ushort r, ushort g, ushort b, ushort a = USHRT_MAX)
QColor fromRgbF(float r, float g, float b, float a = 1.0)
QColor fromRgba(QRgb rgba)
(since 6.4) QColor fromString(QAnyStringView name)
(since 6.4) bool isValidColorName(QAnyStringView name)
QRgb
int qAlpha(QRgb rgba)
uint qAlpha(QRgba64 rgba64)
int qBlue(QRgb rgb)
uint qBlue(QRgba64 rgba64)
int qGray(int r, int g, int b)
int qGray(QRgb rgb)
int qGreen(QRgb rgb)
uint qGreen(QRgba64 rgba64)
QRgb qPremultiply(QRgb rgb)
QRgba64 qPremultiply(QRgba64 rgba64)
int qRed(QRgb rgb)
uint qRed(QRgba64 rgba64)
QRgb qRgb(int r, int g, int b)
QRgba64 qRgba64(quint64 c)
QRgba64 qRgba64(quint16 r, quint16 g, quint16 b, quint16 a)
QRgb qRgba(int r, int g, int b, int a)
QRgb qUnpremultiply(QRgb rgb)
QRgba64 qUnpremultiply(QRgba64 rgba64)
QDataStream &operator<<(QDataStream &stream, const QColor &color)
QDataStream &operator>>(QDataStream &stream, QColor &color)

詳細説明

色は通常RGB(赤、緑、青)成分で指定しますが、HSV(色相、彩度、明度)やCMYK(シアン、マゼンタ、イエロー、ブラック)成分で指定することもできます。さ ら に、 色は色名を使っ て指定す る こ と も で き ます。色名は SVG 1.0 の色名のいずれでもよい。

RGBHSVCMYK

QColor コンストラクタは RGB 値に基づいて色を作成します。HSV または CMYK 値に基づいて QColor を作成するには、それぞれtoHsv() およびtoCmyk() 関数を使用します。これらの関数は、希望するフォーマットを使用した色のコピーを返します。さらに、静的関数fromRgb(),fromHsv(),fromCmyk() は、指定された値から色を作成します。また、convertTo() 関数 (希望する書式で色のコピーを返す) や、setRgb(),setHsv(),setCmyk() 関数でこの色の書式を変更することで、色を3つの書式のいずれかに変換することもできます。spec() 関数は、色の指定方法を示す。

fromString ()関数にRGB文字列("#112233 "など)、ARGB文字列("#ff112233 "など)、色名("blue "など)を渡すことで色を設定できる。色名は SVG 1.0 の色名から取られる。name() 関数は色の名前を "#RRGGBB" の形式で返す。色はsetRgb(),setHsv(),setCmyk() でも設定できます。色を薄くしたり濃くしたりするには、それぞれlighter() およびdarker() 関数を使用する。

isValid() 関数は、QColor が有効かどうかを示します。例えば、RGB値が範囲外のRGBカラーは不正です。パフォーマンス上の理由から、QColorは不正な色を無視することがほとんどで、そのため不正な色を使用した結果は未定義となります。

色成分は、red(),hue(),cyan() などで個別に取得できます。また、getRgb()、getHsv()、getCmyk() 関数を使用して、色成分の値を一度に取得することもできます。RGBカラーモデルを使用すると、さらにrgb ()で色成分にアクセスできます。

QRgb は、RGB値のトリプレット(r、g、b)を表すunsigned intのtypdefです。また、アルファチャンネルの値を保持することもできることに注意してください(詳細については、Alpha-Blended Drawing のセクションを参照してください)。qRed ()、qBlue ()、qGreen ()関数は、指定されたQRgb 値の各成分を返し、qRgb ()、qRgba ()関数は、指定された成分値に基づいてQRgb トリプレットを作成して返します。最後に、qAlpha ()関数は、指定されたQRgb のアルファ成分を返し、qGray ()関数は、指定された値に基づいてグレー値を計算して返します。

QColorはプラットフォームやデバイスに依存しません。QColormap クラスは色をハードウェアにマッピングします。

一般的なペイントの詳細については、ペイント・システムのドキュメントを参照してください。

整数精度と浮動小数点精度

QColorは浮動小数点精度をサポートしており、すべての色成分関数の浮動小数点バージョンを提供しています(getRgbF()、hueF()、fromCmykF())。コンポーネントは 16 ビット整数を使用して保存されるため、例えばsetRgbF() を使用して設定された値と、getRgbF() 関数によって返された値との間には、丸めによるわずかなずれが生じる可能性があることに注意してください。

整数ベースの関数が0~255の範囲の値をとるのに対し(ただし、hue ()は0~359の範囲の値でなければならない)、浮動小数点関数は0.0~1.0の範囲の値をとる。

アルファブレンド描画

QColor は、アルファブレンドされたアウトラインと塗りつぶしにも対応しています。色のアルファ・チャンネルは透明効果を指定し、0は完全に透明な色を、255は完全に不透明な色を表します。例えば

// Specify semi-transparent red
painter.setBrush(QColor(255, 0, 0, 127));
painter.drawRect(0, 0, width() / 2, height());

// Specify semi-transparent blue
painter.setBrush(QColor(0, 0, 255, 127));
painter.drawRect(0, 0, width(), height() / 2);

上のコードは次のような出力を生成します:

色のアルファ・チャンネルは、その値が整数の場合はalpha() とsetAlpha() 関数を、浮動小数点の場合はalphaF() とsetAlphaF() 関数を使用して取得および設定できます。デフォルトでは、アルファ・チャンネルは255(不透明)に設定されています。アルファ・チャンネルを含む)すべてのRGB カラー・コンポーネントを一度に取得および設定するには、rgba() およびsetRgba() 関数を使用します。

定義済みの色

QColorConstants 名前空間には、黒、白、原色、二次色、これらの色の暗いバージョン、および 3 つの灰色を含む、20 の定義済み QColor オブジェクトがあります。さらに、QColorConstants::Svg 名前空間は標準SVG色キーワード名のためのQColorオブジェクトを定義している。

Qt Colors

QColorConstants::Color0QColorConstants::Color1QColorConstants::Transparent 色は特別な目的のために使われる。

QColorConstants::Color0 (ゼロピクセル値)と (非ゼロピクセル値)はQBitmapsで描画するための特別な色です。 で描画す る と ビ ッ ト マ ッ プのビ ッ ト が 0 (透過、 すなわち背景) に設定 さ れ、 c{QColorConstants::Color1} で描画す る と ビ ッ ト が 1 (不透明、 すなわち前景) に設定 さ れます。QColorConstants::Color1 QColorConstants::Color0

QColorConstants::Transparent は、透明なピクセルを示すために使用されます。こ の値で描画す る と き は、 使用 さ れてい る ピ ク セル形式に適した ピ ク セル値が用い ら れます。

歴史的な理由から、20 の定義済み色はQt::GlobalColor 列挙でも利用可能です。

最後に、QColor はさまざまな色の名前を(文字列として)認識します。静的なcolorNames() 関数は、QColor が知っているQStringList の色の名前を返します。

拡張 RGB カラーモデル

scRGB色空間としても知られる拡張RGBカラーモデルは、0.0未満、1.0以上の値を許容する以外はRGBカラーモデルと同じです。これによって、RGB 色空間の範囲外の色でも、RGB 色空間内の色と同じ値で表現できるようになります。

HSVカラーモデル

RGBモデルはハードウェア指向です。その表現は、ほとんどのモニターが表示するものに近いものです。対照的に、HSVは人間の色知覚により適した方法で色を表現します。例えば、"より強い"、"より暗い"、および "の反対 "という関係は、HSVでは簡単に表現できますが、RGBでははるかに表現が困難です。

HSVはRGBと同様、3つの要素を持っています:

  • Hは色相を表し、色が有彩色(灰色ではない)なら0から359の範囲にあり、灰色なら意味がない。Hは色相を表し、色が有彩色(灰色でない)なら0から359の範囲で、灰色なら意味がない。赤は0度、緑は120度、青は240度です。

  • Sは彩度を表し、0から255の範囲で、大きいほど強い色です。灰色がかった色は彩度が0に近く、非常に強い色は彩度が255に近い。

  • Vは値のことで、0から255の範囲で、色の明るさや明度を表します。0は黒、255は限りなく黒に近い。

純粋な赤はH=0, S=255, V=255、マゼンタ寄りの暗い赤はH=350(-10に相当), S=255, V=180、灰色がかった明るい赤はHが約0(350-359または0-10), Sが約50-100, S=255です。

Qtは無彩色の場合、色相値-1を返します。大きすぎる色相値を渡すと、Qtはそれを強制的に範囲内に収めます。色相360または720は0として扱われ、色相540は180として扱われます。

標準的な HSV モデルに加え、Qt はアルファチャンネルをalpha-blended drawing に提供しています。

HSL カラーモデル

HSL は HSV に似ていますが、Value パラメータの代わりに Lightness パラメータを指定します。

同様に、HSL の彩度値は一般に同じ色の HSV 彩度値と同じではありません。hslSaturation() は色の HSL 彩度値を提供し、saturation() とhsvSaturation() は HSV 彩度値を提供します。

色相値は HSL と HSV で同じであると定義されています。

CMYKカラーモデル

RGBとHSVのカラーモデルはコンピュータのモニターに表示するために使用されますが、CMYKモデルは印刷機や一部のハードコピー機器の4色印刷プロセスで使用されます。

CMYKには、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)の4つの成分があり、すべて0~255の範囲にある。シアン、マゼンタ、イエローは減法色と呼ばれ、CMYKカラーモデルでは、まず白い表面から始めて、適切な成分を適用して色を減算することで色を作成します。シアン、マゼンタ、イエローを組み合わせると黒になりますが、1つ以上差し引くと他の色になります。この3色をさまざまな割合で組み合わせると、あらゆる色のスペクトルを作り出すことができる。

シアン、マゼンタ、イエローを100%混ぜると黒はできるが、インクを無駄にし、乾燥時間が長くなり、印刷時に濁った色になるため、満足のいく結果は得られない。そのため、プロの印刷では黒を加えて、しっかりとした黒を表現する。

標準的なCMYKモデルに加えて、Qtはアルファチャンネルを提供し、alpha-blended drawing

QPaletteQBrushQColorConstantsも参照して ください。

メンバ型ドキュメント

enum QColor::NameFormat

name() 関数の出力をフォーマットする方法。

定数説明
QColor::HexRgb0#RRGGBB "#" 文字の後に 2 桁の 16 進数が 3 つ続く (例:#RRGGBB)。
QColor::HexArgb1#AARRGGBB "#"文字の後に2桁の16進数が4つ続く (例:#AARRGGBB)。

name()も参照

enum QColor::Spec

指定 し た色の種類。 RGB ・ 拡張 RGB ・ HSV ・ CMYK ・ HSL のいずれか。

定数値。
QColor::Rgb1
QColor::Hsv2
QColor::Cmyk3
QColor::Hsl4
QColor::ExtendedRgb5
QColor::Invalid0

spec() およびconvertTo()も参照

メンバ関数ドキュメント

[constexpr noexcept] QColor::QColor()

RGB 値 (0, 0, 0) で無効な色を構築します。無効な色とは、基礎となるウィンドウシステムに対して正しく設定されていない色のことです。

無効な色のアルファ値は指定されません。

isValid()も参照

[noexcept] QColor::QColor(QRgb color)

color を持つ色を構築します。アルファ成分は無視され、無地に設定されます。

fromRgb() およびisValid()参照。

[noexcept] QColor::QColor(QRgba64 rgba64)

rgba64 を持つ色を構築します。

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

QColor::QColor(const QString &name)

指定されたname を用いて、 setNamedColor() と同様に名前付きカラーを構築します。

name をパースできない場合、その色は無効なままになります。

setNamedColor()、name() およびisValid()も参照

[constexpr noexcept] QColor::QColor(int r, int g, int b, int a = 255)

RGB 値rgb 、およびアルファチャンネル(透明度)値a を持つ色を構築します。

引数のいずれかが無効な場合、この色は無効なままになります。

setRgba() およびisValid()も参照

QColor::QColor(QLatin1StringView name)

指定されたname を用いて、setNamedColor() と同様に名前付きカラーを構築します。

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

setNamedColor()、name()、isValid()も参照

[noexcept] QColor::QColor(Qt::GlobalColor color)

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

color の色値を持つ新しい色を構築します。

isValid() およびPredefined Colors参照して ください。

QColor::QColor(const char *name)

指定されたname を使用して、setNamedColor() と同じ方法で名前付きカラーを構築します。

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

setNamedColor()、name() およびisValid()も参照

[noexcept] int QColor::alpha() const

この色のアルファ色成分を返します。

setAlpha()、alphaF() およびAlpha-Blended Drawing参照

[noexcept] float QColor::alphaF() const

この色のアルファ色成分を返します。

setAlphaF()、alpha() およびAlpha-Blended Drawing参照

[noexcept] int QColor::black() const

この色の黒色成分を返します。

blackF()、getCmyk() およびThe CMYK Color Modelも参照

[noexcept] float QColor::blackF() const

この色の黒色成分を返します。

black()、getCmykF() およびThe CMYK Color Modelも参照

[noexcept] int QColor::blue() const

この色の青成分を返します。

setBlue()、blueF() およびgetRgb() も参照

[noexcept] float QColor::blueF() const

この色の青色成分を返します。

setBlueF()、blue() およびgetRgbF() も参照

[static] QStringList QColor::colorNames()

Qt が知っている色の名前を含むQStringList を返します。

Predefined Colorsも参照して ください。

[noexcept] QColor QColor::convertTo(QColor::Spec colorSpec) const

colorSpec で指定したフォーマットで、この色のコピーを作成します。

spec(),toCmyk(),toHsv(),toRgb(),isValid()も参照

[noexcept] int QColor::cyan() const

この色のシアン色成分を返します。

cyanF()、getCmyk() およびThe CMYK Color Model参照

[noexcept] float QColor::cyanF() const

この色のシアン色成分を返します。

cyan()、getCmykF() およびThe CMYK Color Model参照

[noexcept] QColor QColor::darker(int factor = 200) const

より暗い(またはより明るい)色を返しますが、このオブジェクトは変更されません。

factor が 100 より大きい場合、この関数はより暗い色を返します。factor を 300 に設定すると、3 分の 1 の明るさの色が返されます。factor が 100 より小さい場合、返される色は明るくなりますが、この目的にはlighter() 関数を使用することをお勧めします。factor が 0 または負の場合、戻り値は指定されません。

この関数は、現在の色を HSV に変換し、値 (V) 成分をfactor で割って、元の色仕様に戻します。

lighter() およびisValid()も参照

[static] QColor QColor::fromCmyk(int c, int m, int y, int k, int a = 255)

QColor c (シアン)、 (マゼンタ)、 (イエロー)、 (ブラック)、および (アルファチャンネル、すなわち透明度) 。m y k a

すべての値は 0 ~ 255 の範囲でなければなりません。

toCmyk(),fromCmykF(),isValid(),The CMYK Color Modelも参照

[static] QColor QColor::fromCmykF(float c, float m, float y, float k, float a = 1.0)

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

QColor c (シアン)、 (マゼンタ)、 (イエロー)、 (ブラック)、 (アルファチャンネル、すなわち透明度)。m y k a

すべての値は 0.0-1.0 の範囲でなければなりません。

toCmyk(),fromCmyk(),isValid(),The CMYK Color Modelも参照

[static] QColor QColor::fromHsl(int h, int s, int l, int a = 255)

HSV 色値h (色相)、s (彩度)、l (明度)、a (アルファチャンネル、すなわち透明度)から構成されるQColor を返す静的便宜関数。

sla の値はすべて 0-255 の範囲でなければなりません。h の値は 0-359 の範囲でなければなりません。

toHsl()、fromHslF()、isValid()、The HSL Color Modelも参照のこと

[static] QColor QColor::fromHslF(float h, float s, float l, float a = 1.0)

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

HSVカラー値h (色相)、s (彩度)、l (明度)、a (アルファチャンネル、つまり透明度) から構成されるQColor を返す静的便利関数。

すべての値は0.0-1.0の範囲でなければなりません。

toHsl(),fromHsl(),isValid(),The HSL Color Modelも参照

[static] QColor QColor::fromHsv(int h, int s, int v, int a = 255)

HSV 色値h (色相),s (彩度),v (値), およびa (アルファチャンネル,すなわち透明度)から構成されるQColor を返す静的便宜関数.

s,v,a の値はすべて 0-255 の範囲でなければなりません。h の値は 0-359 の範囲でなければなりません。

toHsv()、fromHsvF()、isValid()、The HSV Color Modelも参照のこと

[static] QColor QColor::fromHsvF(float h, float s, float v, float a = 1.0)

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

HSVカラー値h (色相)、s (彩度)、v (値)、a (アルファチャンネル、つまり透明度) から構成されるQColor を返す静的便利関数。

すべての値は0.0-1.0の範囲でなければなりません。

toHsv(),fromHsv(),isValid(),The HSV Color Modelも参照

[static noexcept] QColor QColor::fromRgb(QRgb rgb)

与えられたQRgb の値rgb から構築されたQColor を返す静的便宜関数。

rgb のアルファ成分は無視されます (つまり、自動的に 255 に設定されます)。与えられたQRgb 値で指定されたアルファチャンネルを含めるには、fromRgba() 関数を使用します。

fromRgba(),fromRgbF(),toRgb(),isValid()も参照

[static] QColor QColor::fromRgb(int r, int g, int b, int a = 255)

RGB カラー値r (赤)、g (緑)、b (青)、a (アルファチャンネル、つまり透明度) から構成されるQColor を返す静的便利関数。

すべての値は 0 ~ 255 の範囲でなければなりません。

toRgb(),fromRgba64(),fromRgbF(),isValid()も参照

[static noexcept] QColor QColor::fromRgba64(QRgba64 rgba64)

与えられたQRgba64 の値rgba64 から構築されたQColor を返す静的便宜関数。

fromRgb()、fromRgbF()、toRgb()、isValid()も参照

[static noexcept] QColor QColor::fromRgba64(ushort r, ushort g, ushort b, ushort a = USHRT_MAX)

RGBA64 色値r (赤)、g (緑)、b (青)、およびa (アルファチャンネル、つまり透明度) から構成されるQColor を返す静的便宜関数。

fromRgb(),fromRgbF(),toRgb(),isValid()も参照

[static] QColor QColor::fromRgbF(float r, float g, float b, float a = 1.0)

RGB カラー値r (赤)、g (緑)、b (青)、およびa (アルファチャンネル、つまり透明度) から構成されるQColor を返す静的便利関数。

アルファ値は0.0〜1.0の範囲でなければなりません。その他の値のいずれかが 0.0-1.0 の範囲外の場合、カラーモデルはExtendedRgb のように設定されます。

fromRgb(),fromRgba64(),toRgb(),isValid()も参照

[static noexcept] QColor QColor::fromRgba(QRgb rgba)

与えられたQRgb の値rgba から構築されたQColor を返す静的便宜関数。

fromRgb() 関数とは異なり、与えられたQRgb 値で指定されたアルファチャンネルが含まれます。

fromRgb()、fromRgba64()、isValid()も参照

[static noexcept, since 6.4] QColor QColor::fromString(QAnyStringView name)

name から解析された RGBQColor を返す:

  • #RGB(R、G、Bはそれぞれ16進数1桁)。
  • #RRGGBB
  • #AARRGGBB (5.2以降)
  • #RRRGGGBBB
  • #RRRGGGBBBB
  • World Wide Web Consortium が提供するSVG 色キーワード名のリストで定義されている色の名前。これらの色名は全てのプラットフォームで動作する。これらの色名はQt::GlobalColor enums で定義されたものとは異なることに注意。例えば "green" とQt::green は同じ色を指すわけではない。
  • transparent - 色がないことを表します。

name が解析できない場合、無効な色を返します。

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

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

void QColor::getCmyk(int *c, int *m, int *y, int *k, int *a = nullptr) const

c,m,y,k,a が指す内容を、その色の CMYK 値のシアン、マゼンタ、イエロー、ブラック、アルファチャンネル(透明)成分に設定します。

これらの成分は、cyan(),magenta(),yellow(),black(),alpha() 関数を使用して個別に取得することができます。

setCmyk() およびThe CMYK Color Modelも参照

void QColor::getCmykF(float *c, float *m, float *y, float *k, float *a = nullptr) const

cmyka が指す内容を、色の CMYK 値のシアン、マゼンタ、イエロー、ブラック、アルファチャンネル(透過)成分に設定します。

これらの成分は、cyanF(),magentaF(),yellowF(),blackF(),alphaF() 関数を使用して個別に取得することができます。

setCmykF() およびThe CMYK Color Modelも参照

void QColor::getHsl(int *h, int *s, int *l, int *a = nullptr) const

h,s,l,a が指す内容を、その色の HSL 値の色相・彩度・明度・アルファチャンネル(透明度)成分に設定します。

これらの成分は、hslHue(),hslSaturation(),lightness(),alpha() 関数を用いて個別に取得することができます。

getHslF()、setHsl() およびThe HSL Color Modelも参照

void QColor::getHslF(float *h, float *s, float *l, float *a = nullptr) const

h,s,l,a が指す内容を、その色の HSL 値の色相・彩度・明度・アルファチャンネル(透明度)成分に設定します。

これらの成分は、hslHueF(),hslSaturationF(),lightnessF(),alphaF() 関数を用いて個別に取得することができます。

getHsl()、setHslF() およびThe HSL Color Modelも参照

void QColor::getHsv(int *h, int *s, int *v, int *a = nullptr) const

hsva が指す内容を、色の HSV 値の色相、彩度、値、アルファチャンネル(透明度)成分に設定します。

これらの成分は、hue(),saturation(),value(),alpha() 関数を使用して個別に取得することができます。

setHsv() およびThe HSV Color Modelも参照

void QColor::getHsvF(float *h, float *s, float *v, float *a = nullptr) const

hsva が指す内容を、その色の HSV 値の色相、彩度、値、アルファチャンネル(透明度)成分に設定します。

これらの成分は、hueF(),saturationF(),valueF(),alphaF() 関数を使用して個別に取得することができます。

setHsv() およびThe HSV Color Modelも参照

void QColor::getRgb(int *r, int *g, int *b, int *a = nullptr) const

rgba が指す内容を、色の RGB 値の赤、緑、青、アルファ・チャンネル(透明度)成分に設定します。

これらの成分は、red(),green(),blue(),alpha() 関数を使用して個別に取得することができます。

rgb() およびsetRgb()も参照

void QColor::getRgbF(float *r, float *g, float *b, float *a = nullptr) const

rgba が指す内容を、色の RGB 値の赤、緑、青、アルファチャンネル(透明度)成分に設定します。

これらの成分は、redF(),greenF(),blueF(),alphaF() 関数を使用して個別に取得することができます。

rgb() およびsetRgb()も参照

[noexcept] int QColor::green() const

この色の緑色成分を返します。

setGreen()、greenF() およびgetRgb() も参照

[noexcept] float QColor::greenF() const

この色の緑色成分を返します。

setGreenF ()、green ()、getRgbF ()参照。

[noexcept] int QColor::hslHue() const

この色の HSL 色相成分を返します。

hslHueF()、hsvHue()、getHsl() およびThe HSL Color Model参照

[noexcept] float QColor::hslHueF() const

この色の HSL 色相成分を返します。

hslHue()、hsvHueF() およびgetHslF() も参照

[noexcept] int QColor::hslSaturation() const

この色の HSL 彩度カラーコンポーネントを返します。

hslSaturationF()、hsvSaturation()、getHsl() およびThe HSL Color Model参照

[noexcept] float QColor::hslSaturationF() const

この色の HSL 飽和色成分を返します。

hslSaturation()、hsvSaturationF()、getHslF() およびThe HSL Color Model参照

[noexcept] int QColor::hsvHue() const

この色の HSV 色相成分を返します。

hueF()、hslHue()、getHsv() およびThe HSV Color Model参照

[noexcept] float QColor::hsvHueF() const

この色の色相色成分を返します。

hue()、hslHueF()、getHsvF() およびThe HSV Color Model参照

[noexcept] int QColor::hsvSaturation() const

この色の HSV 飽和色成分を返します。

saturationF()、hslSaturation()、getHsv() およびThe HSV Color Model参照

[noexcept] float QColor::hsvSaturationF() const

この色の HSV 飽和色成分を返します。

saturation()、hslSaturationF()、getHsvF() およびThe HSV Color Model参照

[noexcept] int QColor::hue() const

この色の HSV 色相成分を返します。

この色は暗黙的に HSV に変換されます。

hsvHue()、hslHue()、hueF()、getHsv() およびThe HSV Color Modelも参照

[noexcept] float QColor::hueF() const

この色の HSV 色相成分を返します。

この色は暗黙のうちに HSV に変換されます。

hsvHueF(),hslHueF(),hue(),getHsvF(),The HSV Color Modelも参照

[noexcept] bool QColor::isValid() const

色が有効な場合はtrue を返し、そうでない場合はfalse を返します。

[static noexcept, since 6.4] bool QColor::isValidColorName(QAnyStringView name)

name が有効な色名であり、有効なQColor オブジェクトを構築するために使用できる場合はtrue を返し、そうでない場合は false を返します。

この関数はfromString() で使われているのと同じアルゴリズムを使用しています。

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

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

[noexcept] QColor QColor::lighter(int factor = 150) const

より明るい(または暗い)色を返しますが、このオブジェクトを変更することはありません。

factor が 100 より大きい場合、この関数は明るい色を返します。factor を 150 に設定すると、50% 明るい色が返されます。factor が 100 より小さい場合、返される色は暗くなりますが、この目的にはdarker() 関数を使用することをお勧めします。factor が 0 または負の場合、戻り値は指定されません。

この関数は、現在の色を HSV に変換し、値 (V) 成分にfactor を掛けて、色を元の色仕様に戻します。

darker() およびisValid()も参照

[noexcept] int QColor::lightness() const

この色の明度成分を返します。

lightnessF() およびgetHsl() も参照

[noexcept] float QColor::lightnessF() const

この色の明度成分を返します。

value() およびgetHslF() も参照

[noexcept] int QColor::magenta() const

この色のマゼンタ色成分を返します。

magentaF()、getCmyk() およびThe CMYK Color Model参照

[noexcept] float QColor::magentaF() const

この色のマゼンタ色成分を返します。

magenta()、getCmykF() およびThe CMYK Color Model参照

QString QColor::name(QColor::NameFormat format = HexRgb) const

指定したformat の色の名前を返します。

fromString() およびNameFormat参照

[noexcept] int QColor::red() const

この色の赤成分を返します。

setRed()、redF() およびgetRgb() も参照

[noexcept] float QColor::redF() const

この色の赤色成分を返します。

setRedF()、red() およびgetRgbF()も参照

[noexcept] QRgb QColor::rgb() const

この色の RGB 値を返します。アルファ値は不透明です。

setRgb()、getRgb() およびrgba() も参照

[noexcept] QRgba64 QColor::rgba64() const

alpha関数は、アルファ値を含む、色の RGB64 値を返します。

無効な色の場合、返される色のアルファ値は指定されません。

setRgba64()、rgba() およびrgb()も参照

[noexcept] QRgb QColor::rgba() const

alpha関数は、アルファ値を含む色の RGB 値を返します。

無効な色の場合、返される色のアルファ値は指定されません。

setRgba()、rgb() およびrgba64()も参照

[noexcept] int QColor::saturation() const

この色の HSV 飽和色成分を返します。

この色は暗黙のうちに HSV に変換されます。

hsvSaturation()、hslSaturation()、saturationF()、getHsv() およびThe HSV Color Model参照

[noexcept] float QColor::saturationF() const

この色の HSV 飽和色成分を返します。

この色は暗黙のうちに HSV に変換されます。

hsvSaturationF()、hslSaturationF()、saturation()、getHsvF() およびThe HSV Color Modelも参照

void QColor::setAlpha(int alpha)

この色のアルファ値をalpha に設定します。 整数のアルファ値は 0-255 の範囲で指定します。

alpha()、alphaF() およびAlpha-Blended Drawingも参照

void QColor::setAlphaF(float alpha)

この色のアルファ値をalpha に設定します。 float alpha は 0.0-1.0 の範囲で指定します。

alphaF()、alpha() およびAlpha-Blended Drawingも参照

void QColor::setBlue(int blue)

この色の青色成分をblue に設定します。 整数成分は 0-255 の範囲で指定します。

blue()、blueF() およびsetRgb() も参照

void QColor::setBlueF(float blue)

この色の青色成分をblue に設定します。blue が 0.0-1.0 の範囲外の場合、カラーモデルはExtendedRgb に変更されます。

blueF(),blue(),setRgbF()も参照

void QColor::setCmyk(int c, int m, int y, int k, int a = 255)

色を CMYK 値、c (シアン)、m (マゼン タ)、y (黄)、k (黒)、 およびa (アルフ ァ チ ャ ン ネル、 すなわち透過) に設定 し ます。

すべての値は 0 ~ 255 の範囲でなければなりません。

getCmyk()、setCmykF()、The CMYK Color Modelも参照

void QColor::setCmykF(float c, float m, float y, float k, float a = 1.0)

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

色を CMYK 値,c (シアン),m (マゼンタ),y (イエロー),k (ブラック),a (アルファチャンネル,すなわち透明度)に設定します。

すべての値は 0.0-1.0 の範囲でなければなりません。

getCmykF ()、setCmyk ()、The CMYK Color Modelも参照

void QColor::setGreen(int green)

この色の緑色成分をgreen に設定します。 整数成分は 0-255 の範囲で指定します。

green()、greenF()、およびsetRgb() も参照

void QColor::setGreenF(float green)

この色の緑色成分をgreen に設定します。green が 0.0-1.0 の範囲外の場合、カラーモデルはExtendedRgb に変更されます。

greenF(),green(),setRgbF()も参照

void QColor::setHsl(int h, int s, int l, int a = 255)

HSL カラー値を設定します。h は色相、s は彩度、l は明度、a は HSL カラーのアルファ成分です。

彩度・明度・アルファチャンネルの値は 0-255 の範囲でなければならず、色相の値は -1 より大きくなければなりません。

getHsl() およびsetHslF()も参照

void QColor::setHslF(float h, float s, float l, float a = 1.0)

HSL 色の明度を設定します。h は色相、s は彩度、l は明度、a は HSL 色のアルファ成分です。

すべての値は 0.0 ~ 1.0 の範囲になければな り ません。

getHslF() およびsetHsl()も参照

void QColor::setHsv(int h, int s, int v, int a = 255)

HSV カラー値を設定。h は色相、s は彩度、v は値、a は HSV カラーのアルファ成分。

彩度,値,アルファチャンネルの値は 0-255 の範囲になければならず,色相の値は -1 より大きくなければなりません。

getHsv(),setHsvF(),The HSV Color Modelも参照

void QColor::setHsvF(float h, float s, float v, float a = 1.0)

h は色相、s は彩度、v は値、a は HSV 色のアルファ成分。

すべての値は 0.0-1.0 の範囲になければなりません。

getHsvF(),setHsv(),The HSV Color Modelも参照

void QColor::setRed(int red)

この色の赤色成分をred に設定します。 整数成分は 0-255 の範囲で指定します。

red()、redF() およびsetRgb() も参照

void QColor::setRedF(float red)

この色の赤色成分をred に設定します。red が 0.0-1.0 の範囲外の場合、カラーモデルはExtendedRgb に変更されます。

redF(),red(),setRgbF()も参照

void QColor::setRgb(int r, int g, int b, int a = 255)

RGB 値をr,g,b に、アルファ値をa に設定します。

すべての値は 0 ~ 255 の範囲でなければなりません。

rgb()、getRgb()、setRgbF()も参照

[noexcept] void QColor::setRgb(QRgb rgb)

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

RGB 値をrgb に設定します。 アルファ値は不透明に設定されます。

[noexcept] void QColor::setRgba64(QRgba64 rgba)

RGB64 値を、アルファ値を含めてrgba に設定します。

setRgba() およびrgba64()も参照

void QColor::setRgbF(float r, float g, float b, float a = 1.0)

この色の色チャンネルをr (赤)、g (緑)、b (青)、a (アルファ、透明)に設定します。

アルファ値は 0.0-1.0 の範囲でなければならない。その他の値のいずれかが 0.0-1.0 の範囲外の場合、カラーモデルはExtendedRgb のように設定されます。

rgb(),getRgbF(),setRgb()も参照

[noexcept] void QColor::setRgba(QRgb rgba)

RGB 値を、そのアルファ値を含めてrgba に設定します。

rgba()、rgb() およびsetRgba64() も参照

[noexcept] QColor::Spec QColor::spec() const

色の指定方法を返します。

Spec およびconvertTo() も参照して ください。

[noexcept] QColor QColor::toCmyk() const

この色に基づく CMYKQColor を作成し、返します。

fromCmyk()、convertTo()、isValid() およびThe CMYK Color Model参照

[noexcept] QColor QColor::toExtendedRgb() const

この色に基づいて、拡張 RGBQColor を生成して返します。

toRgb およびconvertTo() も参照

[noexcept] QColor QColor::toHsl() const

この色に基づく HSLQColor を作成し、返します。

fromHsl()、convertTo()、isValid() およびThe HSL Color Model参照

[noexcept] QColor QColor::toHsv() const

この色に基づいて HSVQColor を生成し、それを返します。

fromHsv()、convertTo()、isValid() およびThe HSV Color Model参照

[noexcept] QColor QColor::toRgb() const

この色に基づく RGBQColor を作成し、返します。

fromRgb()、convertTo() およびisValid()も参照

[noexcept] int QColor::value() const

この色の値色コンポーネントを返します。

valueF()、getHsv() およびThe HSV Color Model参照

[noexcept] float QColor::valueF() const

この色の値色成分を返します。

value()、getHsvF()、The HSV Color Modelも参照

[noexcept] int QColor::yellow() const

この色の黄色成分を返します。

yellowF()、getCmyk() およびThe CMYK Color Modelも参照

[noexcept] float QColor::yellowF() const

この色の黄色成分を返します。

yellow()、getCmykF() およびThe CMYK Color Modelも参照

QVariant QColor::operator QVariant() const

として色を返します。QVariant

[noexcept] bool QColor::operator!=(const QColor &color) const

この色がcolor と異なる色指定や成分値を持つ場合はtrue を返し、 そうでない場合はfalse を返します。

ExtendedRgb と Rgb の指定は、このコンテキストでは一致するとみなされます。

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

[noexcept] QColor &QColor::operator=(Qt::GlobalColor color)

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

color のコピーを代入し、この色への参照を返します。

[noexcept] bool QColor::operator==(const QColor &color) const

この色がcolor と同じ色指定と成分値を持つ場合はtrue を返し、そうでない場合はfalse を返します。

ExtendedRgb と Rgb の指定は、この文脈では一致すると見なされます。

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

関連する非メンバー

QRgb

符号なし int に相当する、#AARRGGBB 形式の ARGB 四則演算子。

この型はアルファチャンネルの値も保持します。デフォルトのアルファチャンネルはff 、つまり不透明です。詳しくはAlpha-Blended Drawing のセクションを参照してください。

以下はQRgb値の作成例です:

const QRgb rgb1 = 0x88112233;
const QRgb rgb2 = QColor("red").rgb();
const QRgb rgb3 = qRgb(qRed(rgb1), qGreen(rgb2), qBlue(rgb2));
const QRgb rgb4 = qRgba(qRed(rgb1), qGreen(rgb2), qBlue(rgb2), qAlpha(rgb1));

qRgb(),qRgba(),QColor::rgb(),QColor::rgba()も参照

[constexpr] int qAlpha(QRgb rgba)

ARGB 4 値のアルファ成分を返すrgba

qRgb() およびQColor::alpha()参照。

[constexpr] uint qAlpha(QRgba64 rgba64)

rgba64 のアルファ成分を 8 ビット値として返す。

QRgba64::alpha8() およびQColor::alpha()も参照

[constexpr] int qBlue(QRgb rgb)

ARGB 四重極値rgb の青成分を返します。

qRgb() およびQColor::blue()も参照

[constexpr] uint qBlue(QRgba64 rgba64)

rgba64 の青成分を 8 ビット値として返します。

QRgba64::blue8() およびQColor::blue()も参照

[constexpr] int qGray(int r, int g, int b)

(r,g,b) のトリプレットからグレイ値 (0 から 255) を返す。

グレイ値は (r * 11 +g * 16 +b * 5)/32 の式で計算される。

[constexpr] int qGray(QRgb rgb)

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

与えられた ARGB 四重極rgb からグレイ値(0 から 255)を返します。

灰色値は (R * 11 + G * 16 + B * 5)/32 の式で計算されます。

[constexpr] int qGreen(QRgb rgb)

ARGB 四重極の緑成分を返しますrgb

qRgb() およびQColor::green()も参照

[constexpr] uint qGreen(QRgba64 rgba64)

rgba64 の緑成分を 8 ビット値で返す。

QRgba64::green8() およびQColor::green()も参照

[constexpr] QRgb qPremultiply(QRgb rgb)

未乗算の ARGB 四重極型rgb を、事前乗算の ARGB 四重極型に変換します。

qUnpremultiply()も参照

[constexpr] QRgba64 qPremultiply(QRgba64 rgba64)

未乗算のQRgba64 四重極rgba64 を、事前乗算のQRgba64 四重極に変換する。

QRgba64::premultiplied() およびqUnpremultiply()も参照

[constexpr] int qRed(QRgb rgb)

ARGB 四重極rgb の赤成分を返します。

qRgb() およびQColor::red()も参照

[constexpr] uint qRed(QRgba64 rgba64)

rgba64 の赤成分を 8 ビット値で返す。

QRgba64::red8() およびQColor::red()も参照

[constexpr] QRgb qRgb(int r, int g, int b)

ARGB 四重極 (255,r,g,b) を返す。

qRgba()、qRed()、qGreen()、qBlue()、qAlpha() も参照

[constexpr] QRgba64 qRgba64(quint64 c)

cQRgba64 構造体として返します。

qRgba()参照のこと。

[constexpr] QRgba64 qRgba64(quint16 r, quint16 g, quint16 b, quint16 a)

QRgba64 四重構造体 (r,g,b,a) を返します。

qRgba()も参照

[constexpr] QRgb qRgba(int r, int g, int b, int a)

ARGB 四重極 (a,r,g,b) を返します。

qRgb(),qRed(),qGreen(),qBlue(),qAlpha()も参照

QRgb qUnpremultiply(QRgb rgb)

事前乗算された ARGB 4 分割子rgb を、事前乗算されていない ARGB 4 分割子に変換します。

qPremultiply()も参照

[constexpr] QRgba64 qUnpremultiply(QRgba64 rgba64)

事前乗算されたQRgba64 四重極rgba64 を、事前乗算されていないQRgba64 四重極に変換する。

QRgba64::unpremultiplied() およびqPremultiply() も参照

QDataStream &operator<<(QDataStream &stream, const QColor &color)

colorstream に書き込みます。

Qt データ型のシリアライズ」も参照して ください。

QDataStream &operator>>(QDataStream &stream, QColor &color)

stream からcolor を読み込みます。

Qt データ型のシリアライズ」も参照して ください。

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