Documentation
¶
Overview ¶
colorパッケージは基本的な色ライブラリを実装します。
Index ¶
- Variables
- func CMYKToRGB(c, m, y, k uint8) (uint8, uint8, uint8)
- func RGBToCMYK(r, g, b uint8) (uint8, uint8, uint8, uint8)
- func RGBToYCbCr(r, g, b uint8) (uint8, uint8, uint8)
- func YCbCrToRGB(y, cb, cr uint8) (uint8, uint8, uint8)
- type Alpha
- type Alpha16
- type CMYK
- type Color
- type Gray
- type Gray16
- type Model
- type NRGBA
- type NRGBA64
- type NYCbCrA
- type Palette
- type RGBA
- type RGBA64
- type YCbCr
Constants ¶
This section is empty.
Variables ¶
var ( Black = Gray16{0} White = Gray16{0xffff} Transparent = Alpha16{0} Opaque = Alpha16{0xffff} )
標準的な色。
Functions ¶
func RGBToYCbCr ¶
RGBToYCbCrは、RGBトリプルをY'CbCrトリプルに変換します。
Types ¶
type CMYK ¶ added in v1.5.0
type CMYK struct {
C, M, Y, K uint8
}
CMYKは、シアン、マゼンタ、イエロー、ブラックの各色に8ビットずつ持つ、完全に不透明なCMYK色を表します。
それは特定のカラープロファイルに関連付けられていません。
type Color ¶
type Color interface { // RGBAは、色のアルファ乗算済みの赤、緑、青、アルファ値を返します。 // 各値の範囲は[0, 0xffff]内ですが、uint32で表されているため、 // 0xffffまでのブレンドファクターを掛けてもオーバーフローしません。 // // アルファ乗算済みの色成分cは、アルファ(a)によってスケーリングされているため、 // 0 <= c <= aの有効な値を持ちます。 RGBA() (r, g, b, a uint32) }
Colorは、アルファ乗算済みの16ビットチャンネルRGBAに自身を変換できます。 この変換は損失を伴う可能性があります。
type Model ¶
Modelは、任意のColorを自身のカラーモデルのものに変換できます。この変換は損失を伴う可能性があります。
var ( RGBAModel Model = ModelFunc(rgbaModel) RGBA64Model Model = ModelFunc(rgba64Model) NRGBAModel Model = ModelFunc(nrgbaModel) NRGBA64Model Model = ModelFunc(nrgba64Model) AlphaModel Model = ModelFunc(alphaModel) Alpha16Model Model = ModelFunc(alpha16Model) GrayModel Model = ModelFunc(grayModel) Gray16Model Model = ModelFunc(gray16Model) )
標準のカラータイプのモデル。
type NRGBA64 ¶
type NRGBA64 struct {
R, G, B, A uint16
}
NRGBA64は、アルファ非乗算の64ビットカラーを表し、 赤、緑、青、アルファそれぞれが16ビットです。
type NYCbCrA ¶ added in v1.6.0
NYCbCrAは、アルファ非乗算のY'CbCr-with-alpha色を表し、 1つの輝度成分、2つの色差成分、1つのアルファ成分それぞれに8ビットずつを持っています。
type Palette ¶
type Palette []Color
Paletteは色のパレットです。
type RGBA ¶
type RGBA struct {
R, G, B, A uint8
}
RGBAは、伝統的な32ビットのアルファ乗算済みカラーを表し、赤、緑、青、アルファそれぞれが8ビットです。
アルファ乗算済みの色成分Cは、アルファ(A)によってスケーリングされているため、 0 <= C <= Aの有効な値を持ちます。
type RGBA64 ¶
type RGBA64 struct {
R, G, B, A uint16
}
RGBA64は、64ビットのアルファ乗算済みカラーを表し、赤、緑、青、アルファそれぞれが16ビットです。
アルファ乗算済みの色成分Cは、アルファ(A)によってスケーリングされているため、 0 <= C <= Aの有効な値を持ちます。
type YCbCr ¶
type YCbCr struct {
Y, Cb, Cr uint8
}
YCbCrは、完全に不透明な24ビットのY'CbCr色を表し、 1つの輝度成分と2つの色差成分のそれぞれに8ビットずつを持っています。
JPEG、VP8、MPEGファミリー、その他のコーデックはこのカラーモデルを使用します。 これらのコーデックはしばしばYUVとY'CbCrを同義語として使用しますが、 厳密には、YUVという用語はアナログビデオ信号にのみ適用され、 Y'(ルーマ)はガンマ補正を適用した後のY(輝度)です。
RGBとY'CbCr間の変換は損失を伴い、両者間の変換には少し異なる複数の公式があります。 このパッケージは、https://www.w3.org/Graphics/JPEG/jfif3.pdf のJFIF仕様に従います。