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 |
- 継承されたメンバを含む、すべてのメンバの一覧
- 非推奨メンバー
- QColor はPainting Classes の一部です。
パブリック型
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 の色名のいずれでもよい。
RGB | HSV | CMYK |
---|---|---|
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オブジェクトを定義している。
QColorConstants::Color0
、QColorConstants::Color1
、QColorConstants::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 。
QPalette 、QBrush 、QColorConstantsも参照して ください。
メンバ型ドキュメント
enum QColor::NameFormat
name() 関数の出力をフォーマットする方法。
定数 | 値 | 説明 |
---|---|---|
QColor::HexRgb | 0 | #RRGGBB "#" 文字の後に 2 桁の 16 進数が 3 つ続く (例:#RRGGBB )。 |
QColor::HexArgb | 1 | #AARRGGBB "#"文字の後に2桁の16進数が4つ続く (例:#AARRGGBB )。 |
name()も参照 。
enum QColor::Spec
指定 し た色の種類。 RGB ・ 拡張 RGB ・ HSV ・ CMYK ・ HSL のいずれか。
定数 | 値。 |
---|---|
QColor::Rgb | 1 |
QColor::Hsv | 2 |
QColor::Cmyk | 3 |
QColor::Hsl | 4 |
QColor::ExtendedRgb | 5 |
QColor::Invalid | 0 |
メンバ関数ドキュメント
[constexpr noexcept]
QColor::QColor()
RGB 値 (0, 0, 0) で無効な色を構築します。無効な色とは、基礎となるウィンドウシステムに対して正しく設定されていない色のことです。
無効な色のアルファ値は指定されません。
isValid()も参照 。
[noexcept]
QColor::QColor(QRgb color)
値color を持つ色を構築します。アルファ成分は無視され、無地に設定されます。
[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 値r 、g 、b 、およびアルファチャンネル(透明度)値a を持つ色を構築します。
引数のいずれかが無効な場合、この色は無効なままになります。
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 で割って、元の色仕様に戻します。
[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 を返す静的便宜関数。
s 、l 、a の値はすべて 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
c 、m 、y 、k 、a が指す内容を、色の 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
h 、s 、v 、a が指す内容を、色の HSV 値の色相、彩度、値、アルファチャンネル(透明度)成分に設定します。
これらの成分は、hue(),saturation(),value(),alpha() 関数を使用して個別に取得することができます。
setHsv() およびThe HSV Color Modelも参照 。
void QColor::getHsvF(float *h, float *s, float *v, float *a = nullptr) const
h 、s 、v 、a が指す内容を、その色の HSV 値の色相、彩度、値、アルファチャンネル(透明度)成分に設定します。
これらの成分は、hueF(),saturationF(),valueF(),alphaF() 関数を使用して個別に取得することができます。
setHsv() およびThe HSV Color Modelも参照 。
void QColor::getRgb(int *r, int *g, int *b, int *a = nullptr) const
r 、g 、b 、a が指す内容を、色の RGB 値の赤、緑、青、アルファ・チャンネル(透明度)成分に設定します。
これらの成分は、red(),green(),blue(),alpha() 関数を使用して個別に取得することができます。
void QColor::getRgbF(float *r, float *g, float *b, float *a = nullptr) const
r 、g 、b 、a が指す内容を、色の RGB 値の赤、緑、青、アルファチャンネル(透明度)成分に設定します。
これらの成分は、redF(),greenF(),blueF(),alphaF() 関数を使用して個別に取得することができます。
[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 を掛けて、色を元の色仕様に戻します。
[noexcept]
int QColor::lightness() const
この色の明度成分を返します。
lightnessF() およびgetHsl() も参照 。
[noexcept]
float QColor::lightnessF() const
この色の明度成分を返します。
[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
に変更されます。
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 より大きくなければなりません。
void QColor::setHslF(float h, float s, float l, float a = 1.0)
HSL 色の明度を設定します。h は色相、s は彩度、l は明度、a は HSL 色のアルファ成分です。
すべての値は 0.0 ~ 1.0 の範囲になければな り ません。
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
に変更されます。
void QColor::setRgb(int r, int g, int b, int a = 255)
RGB 値をr,g,b に、アルファ値をa に設定します。
すべての値は 0 ~ 255 の範囲でなければなりません。
[noexcept]
void QColor::setRgb(QRgb rgb)
これはオーバーロードされた関数です。
RGB 値をrgb に設定します。 アルファ値は不透明に設定されます。
[noexcept]
void QColor::setRgba64(QRgba64 rgba)
RGB64 値を、アルファ値を含めてrgba に設定します。
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
のように設定されます。
[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 を生成して返します。
[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)
c をQRgba64 構造体として返します。
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)
color をstream に書き込みます。
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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。