Python Pillow - 图像上的颜色

ImageColor 模块包含以不同格式排列在表格中的颜色,它还包含从 CSS3 样式颜色说明符到 RGB 元组的转换器。


颜色名称

ImageColor 模块支持以下字符串格式 −

  • 十六进制颜色说明符,以#rgb 或#rrggbb 形式给出。 比如#00ff00代表纯绿色。

  • #00ff00 十六进制颜色,红色值为 0(0% red),绿色值为 255(100% green),其 RGB 的蓝色值为 0(0% blue)。

  • #00ff00 颜色的柱面坐标表示(也称为 HSL)色调:0.33,饱和度:1.00,00ff00 的亮度值为 0.50。

  • 图像颜色模块提供大约 140 种标准颜色名称,这些名称基于 X Window 系统和大多数 Web 浏览器支持的颜色。 颜色名称不区分大小写。


ImageColor.getrgb() 方法

将颜色字符串转换为 RGB 元组。 如果无法解析字符串,则此函数会引发 ValueError 异常。

语法

PIL.ImageColor.getrgb(color)

这里,

  • 参数:color – 一个颜色字符串

  • 返回值: (red, green, blue[, alpha])

示例 1

from PIL import ImageColor

# using getrgb
img = ImageColor.getrgb("blue")
print(img)

img1 = ImageColor.getrgb("purple")
print(img1)

输出

(0, 0, 255)
(128, 0, 128)

示例 2

#Import required image modules
from PIL import Image,ImageColor

# Create new image & get color RGB tuple.
img = Image.new("RGB", (256, 256), ImageColor.getrgb("#add8e6"))

#Show image
img.show()

输出

ImageColor getrgb

ImageColor.getcolor() 方法

此方法与 getrgb() 相同,但是,如果模式不是,则将 RGB 值转换为灰度值。图形命令支持形状绘制和文本注释颜色或调色板图像。 如果无法解析字符串,此函数将引发 ValueError 异常。

语法

PIL.ImageColor.getcolor(color, mode)

这里,

  • 参数 - 颜色字符串

  • 返回值 - (graylevel[, alpha]) 或 (red, green, blue[, alpha])

示例

#Import required image modules
from PIL import Image,ImageColor

# using getrgb

img = ImageColor.getrgb("skyblue")
print(img)

img1 = ImageColor.getrgb("purple")
print(img1)

输出

(135, 206, 235)
(128, 0, 128)