cpp

Создание изображения. Формат Uniform

Создать изображение в формате Uniform (бесконечное одноцветное изображение) позволяет функция NewUniform() из пакета image. Формат функции:

image.NewUniform(c color.Color) *image.Uniform

Пример:

img := image.NewUniform(color.RGBA{255, 0, 0, 255})

Определение структуры image.Uniform:

type Uniform struct {
   C color.Color
}

Пример вывода цвета изображения:

fmt.Println(img.C.RGBA()) // 65535 0 0 65535

Структура image.Uniform содержит следующие методы:

  • ColorModel() — возвращает цветовую модель. Формат метода:
(*image.Uniform).ColorModel() color.Model

Пример:

fmt.Println(img.ColorModel()) // &{{255 0 0 255}}
  • Bounds() — возвращает координаты прямоугольной области. Формат метода:
(*image.Uniform).Bounds() image.Rectangle

Пример:

img := image.NewUniform(color.RGBA{255, 0, 0, 255})
fmt.Println(img.Bounds())
// (-1000000000,-1000000000)-(1000000000,1000000000)
  • At() — возвращает информацию о цвете точки с указанными координатами. Формат метода:
(*image.Uniform).At(x int, y int) color.Color

Пример:

fmt.Println(img.At(0, 0).RGBA()) // 65535 0 0 65535
  • RGBA() — возвращает цвет изображения. Формат метода:
(*image.Uniform).RGBA() (r uint32, g uint32, b uint32, a uint32)

Пример:

fmt.Println(img.RGBA()) // 65535 0 0 65535
  • RGBA64At() — возвращает информацию о цвете точки с указанными координатами. Формат метода:
(*image.Uniform).RGBA64At(x int, y int) color.RGBA64

Пример:

fmt.Println(img.RGBA64At(0, 0).RGBA()) // 65535 0 0 65535
  • Opaque() — возвращает true, если изображение является полностью непрозрачным, и false — в противном случае. Формат метода:
(*image.Uniform).Opaque() bool

Пример:

fmt.Println(img.Opaque()) // true
  • Convert() — возвращает преобразованный цвет. Формат метода:
(*image.Uniform).Convert(color.Color) color.Color

Пример:

fmt.Println(img.Convert(color.RGBA{255, 255, 0, 255}))
// {255 0 0 255}
fmt.Println(img.Convert(color.RGBA{255, 255, 255, 255}))
// {255 0 0 255}

Можно воспользоваться уже готовыми изображениями:

var image.Black *image.Uniform
var image.White *image.Uniform
var image.Transparent *image.Uniform
var image.Opaque *image.Uniform

Учебник Go (Golang)
Учебник Go (Golang) в формате PDF

Помощь сайту

ЮMoney (Yandex-деньги): 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов

cpp