Spec-Zone.ru › Go

Пакет color

  • import "image/color"
  • Обзор
  • Указатель
  • Подкаталоги

Обзор

Пакет color реализует базовую библиотеку цветов.

Указатель

  • Переменные
  • 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
  • func (c Alpha) RGBA() (r, g, b, a uint32)
  • type Alpha16
  • func (c Alpha16) RGBA() (r, g, b, a uint32)
  • type CMYK
  • func (c CMYK) RGBA() (uint32, uint32, uint32, uint32)
  • type Color
  • type Gray
  • func (c Gray) RGBA() (r, g, b, a uint32)
  • type Gray16
  • func (c Gray16) RGBA() (r, g, b, a uint32)
  • type Model
  • func ModelFunc(f func(Color) Color) Model
  • type NRGBA
  • func (c NRGBA) RGBA() (r, g, b, a uint32)
  • type NRGBA64
  • func (c NRGBA64) RGBA() (r, g, b, a uint32)
  • type NYCbCrA
  • func (c NYCbCrA) RGBA() (uint32, uint32, uint32, uint32)
  • type Palette
  • func (p Palette) Convert(c Color) Color
  • func (p Palette) Index(c Color) int
  • type RGBA
  • func (c RGBA) RGBA() (r, g, b, a uint32)
  • type RGBA64
  • func (c RGBA64) RGBA() (r, g, b, a uint32)
  • type YCbCr
  • func (c YCbCr) RGBA() (uint32, uint32, uint32, uint32)

Файлы пакета

color.go ycbcr.go

Переменные

Стандартные цвета.

var (
    Black       = Gray16{0}
    White       = Gray16{0xffff}
    Transparent = Alpha16{0}
    Opaque      = Alpha16{0xffff}
)

func CMYKToRGB 1.5

func CMYKToRGB(c, m, y, k uint8) (uint8, uint8, uint8)

CMYKToRGB преобразует четверку значений CMYK в тройку значений RGB.

func RGBToCMYK 1.5

func RGBToCMYK(r, g, b uint8) (uint8, uint8, uint8, uint8)

RGBToCMYK преобразует тройку значений RGB в четверку значений CMYK.

func RGBToYCbCr

func RGBToYCbCr(r, g, b uint8) (uint8, uint8, uint8)

RGBToYCbCr преобразует тройку значений RGB в тройку значений Y'CbCr.

func YCbCrToRGB

func YCbCrToRGB(y, cb, cr uint8) (uint8, uint8, uint8)

YCbCrToRGB преобразует тройку значений Y'CbCr в тройку значений RGB.

type Alpha

Alpha представляет 8-битный альфа-цвет.

type Alpha struct {
    A uint8
}

func (Alpha) RGBA

func (c Alpha) RGBA() (r, g, b, a uint32)

type Alpha16

Alpha16 представляет 16-битный альфа-цвет.

type Alpha16 struct {
    A uint16
}

func (Alpha16) RGBA

func (c Alpha16) RGBA() (r, g, b, a uint32)

type CMYK 1.5

CMYK представляет полностью непрозрачный цвет CMYK с 8 битами для каждого из компонентов: голубого, пурпурного, желтого и черного.

Он не связан с каким-либо конкретным цветовым профилем.

type CMYK struct {
    C, M, Y, K uint8
}

func (CMYK) RGBA 1.5

func (c CMYK) RGBA() (uint32, uint32, uint32, uint32)

type Color

Color может преобразовать себя в RGBA с предварительным умножением на альфа-канал и 16 битами на канал. Преобразование может быть с потерями.

type Color interface {
    // RGBA returns the alpha-premultiplied red, green, blue and alpha values
    // for the color. Each value ranges within [0, 0xffff], but is represented
    // by a uint32 so that multiplying by a blend factor up to 0xffff will not
    // overflow.
    //
    // An alpha-premultiplied color component c has been scaled by alpha (a),
    // so has valid values 0 <= c <= a.
    RGBA() (r, g, b, a uint32)
}

type Gray

Gray представляет 8-битный оттенок серого.

type Gray struct {
    Y uint8
}

func (Gray) RGBA

func (c Gray) RGBA() (r, g, b, a uint32)

type Gray16

Gray16 представляет 16-битный оттенок серого.

type Gray16 struct {
    Y uint16
}

func (Gray16) RGBA

func (c Gray16) RGBA() (r, g, b, a uint32)

type Model

Model может преобразовать любой цвет Color в цвет собственной цветовой модели. Преобразование может быть с потерями.

type Model interface {
    Convert(c Color) 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)
)

CMYKModel — это Model для цветов CMYK.

var CMYKModel Model = ModelFunc(cmykModel)

NYCbCrAModel — это Model для цветов Y'CbCr с альфа-каналом без предварительного умножения на альфа-канал.

var NYCbCrAModel Model = ModelFunc(nYCbCrAModel)

YCbCrModel — это Model для цветов Y'CbCr.

var YCbCrModel Model = ModelFunc(yCbCrModel)

func ModelFunc

func ModelFunc(f func(Color) Color) Model

ModelFunc возвращает Model, которая вызывает f для реализации преобразования.

type NRGBA

NRGBA представляет 32-битный цвет без предварительного умножения на альфа-канал.

type NRGBA struct {
    R, G, B, A uint8
}

func (NRGBA) RGBA

func (c NRGBA) RGBA() (r, g, b, a uint32)

type NRGBA64

NRGBA64 представляет 64-битный цвет без предварительного умножения на альфа-канал: по 16 бит для каждого из красного, зеленого, синего каналов и альфа-канала.

type NRGBA64 struct {
    R, G, B, A uint16
}

func (NRGBA64) RGBA

func (c NRGBA64) RGBA() (r, g, b, a uint32)

type NYCbCrA 1.6

NYCbCrA представляет цвет Y'CbCr с альфа-каналом без предварительного умножения на альфа-канал: по 8 бит для компонента яркости, двух компонентов цветности и компонента альфа-канала.

type NYCbCrA struct {
    YCbCr
    A uint8
}

func (NYCbCrA) RGBA 1.6

func (c NYCbCrA) RGBA() (uint32, uint32, uint32, uint32)

type Palette

Palette — это палитра цветов.

type Palette []Color

func (Palette) Convert

func (p Palette) Convert(c Color) Color

Convert возвращает цвет палитры, ближайший к c в евклидовом пространстве R,G,B.

func (Palette) Index

func (p Palette) Index(c Color) int

Index возвращает индекс цвета палитры, ближайшего к c в евклидовом пространстве R,G,B,A.

type RGBA

RGBA представляет традиционный 32-битный цвет с предварительным умножением на альфа-канал: по 8 бит для каждого из красного, зеленого, синего каналов и альфа-канала.

Компонент C цвета с предварительным умножением на альфа-канал масштабируется альфа-каналом (A), поэтому допустимые значения находятся в диапазоне 0 <= C <= A.

type RGBA struct {
    R, G, B, A uint8
}

func (RGBA) RGBA

func (c RGBA) RGBA() (r, g, b, a uint32)

type RGBA64

RGBA64 представляет 64-битный цвет с предварительным умножением на альфа-канал: по 16 бит для каждого из красного, зеленого, синего каналов и альфа-канала.

Компонент C цвета с предварительным умножением на альфа-канал масштабируется альфа-каналом (A), поэтому допустимые значения находятся в диапазоне 0 <= C <= A.

type RGBA64 struct {
    R, G, B, A uint16
}

func (RGBA64) RGBA

func (c RGBA64) RGBA() (r, g, b, a uint32)

type YCbCr

YCbCr представляет полностью непрозрачный 24-битный цвет Y'CbCr: по 8 бит для компонента яркости и двух компонентов цветности.

В JPEG, VP8, семействе MPEG и других кодеках используется эта цветовая модель. В таких кодеках термины YUV и Y'CbCr часто используются как взаимозаменяемые, однако, строго говоря, термин YUV применяется только к аналоговым видеосигналам, а Y' (яркость) — это Y (светимость) после гамма-коррекции.

Преобразование между RGB и Y'CbCr выполняется с потерями; существует несколько немного различающихся формул для преобразования между ними. Этот пакет следует спецификации JFIF по адресу https://www.w3.org/Graphics/JPEG/jfif3.pdf.

type YCbCr struct {
    Y, Cb, Cr uint8
}

func (YCbCr) RGBA

func (c YCbCr) RGBA() (uint32, uint32, uint32, uint32)

Подкаталоги

Имя Краткое описание
..
palette Пакет palette предоставляет стандартные цветовые палитры.

© Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
http://golang.org/pkg/image/color/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API