На этом шаге мы рассмотрим функцию new().
Библиотека Pillow позволяет работать не только с готовыми изображениями, но и создавать их. Создать новое изображение позволяет функция new(). Функция имеет следующий формат:
new(<Режим>, <Размер>[, <Цвет фона>])
В параметре <Режим> указывается один из режимов:
Цветовые пространства описываются набором цветовых координат и правилами построения цветов. К примеру, RGB является трёхмерным цветовым пространством, где каждый цвет описан набором из трёх координат — каждая из них отвечает компоненте цвета в разложении на красный, зелёный и синий цвета. Количество координат задаёт размерность пространства. Существует много цветовых пространств различной размерности — от одномерных, которые могут описать исключительно монохромное изображение, до шести- и десятимерных, таких, например, как пространство CMYKLcLm (Cyan, Magenta, Yellow, Key color, lightCyan, lightMagenta). Пространства высокой размерности чаще всего используются в целях печати на плоттерах или аппаратах для цветопроб.
Во втором параметре необходимо передать размер создаваемого изображения (холста) в виде кортежа из двух элементов: (<Ширина>, <Высота>). В необязательном параметре <Цвет фона> задается цвет фона. Если параметр не указан, то фон будет черного цвета. Для режима RGB цвет указывается в виде кортежа из трех цифр от 0 до 255 (<Доля красного>, <Доля зеленого>, <Доля синего>). Кроме того, можно указать название цвета на английском языке и строки в форматах "#RGB" и "#RRGGBB". Различные способы указания цвета приведены ниже:
>>> img = Image.new("RGB",(100,100)) >>> img.show() # Черный квадрат >>> img = Image.new("RGB", (100, 100), (255, 0, 0)) >>> img.show() # Красный квадрат >>> img = Image.new("RGB", (100, 100), "green") >>> img.show() # Зеленый квадрат >>> img = Image.new("RGB", (100, 100), "#f00") >>> img.show() # Красный квадрат >>> img = Image.new("RGB", (100, 100), "#ff0000") >>> img.show() # Красный квадрат
На следующем шаге мы рассмотрим получение информации об изображении.