Сила подушки: добавление прямоугольников к изображениям стало проще!

Привет, ребята! Сегодня мы погружаемся в мир манипуляций с изображениями с помощью мощной библиотеки Python под названием Pillow. В этой статье блога мы рассмотрим различные методы добавления прямоугольников к изображениям с помощью Pillow. Так что хватайте редактор кода и приступайте!

Добавление прямоугольников к изображениям:
Метод 1: использование модуля ImageDraw
Модуль ImageDrawPillow предоставляет удобный набор функций для рисования фигур на изображениях. Чтобы добавить прямоугольник, мы сначала создадим объект ImageDraw.Drawна основе нашего изображения. Затем мы можем использовать метод rectangle()для определения координат прямоугольника и его свойств, таких как цвет и ширина линии. Давайте посмотрим на код:

from PIL import Image, ImageDraw
# Load the image
image = Image.open("your_image.jpg")
# Create an ImageDraw object
draw = ImageDraw.Draw(image)
# Define rectangle coordinates and properties
rectangle_coords = [(100, 100), (300, 200)]
outline_color = "red"
outline_width = 2
# Add the rectangle to the image
draw.rectangle(rectangle_coords, outline=outline_color, width=outline_width)
# Save the modified image
image.save("modified_image.jpg")

Метод 2: использование модуля ImageOps
Модуль ImageOpsPillow обеспечивает ряд операций с изображениями, включая добавление прямоугольников. Функция ImageOps.rectangle()позволяет нам добавлять прямоугольники непосредственно к изображению. Вот пример:

from PIL import Image, ImageOps
# Load the image
image = Image.open("your_image.jpg")
# Define rectangle coordinates and properties
rectangle_coords = [(100, 100), (300, 200)]
outline_color = "blue"
outline_width = 3
# Add the rectangle to the image
modified_image = ImageOps.rectangle(image, rectangle_coords, outline=outline_color, width=outline_width)
# Save the modified image
modified_image.save("modified_image.jpg")

Метод 3: использование модуля Image
Модуль ImagePillow также предоставляет метод создания новых изображений заданного размера и цвета. Мы можем использовать эту функцию для добавления прямоугольника, создав новое изображение, нарисовав на нем прямоугольник, а затем вставив его в исходное изображение. Ознакомьтесь с кодом ниже:

from PIL import Image
# Load the image
image = Image.open("your_image.jpg")
# Create a new image with the same size as the original image
rectangle_image = Image.new("RGBA", image.size, (0, 0, 0, 0))
# Create an ImageDraw object based on the rectangle image
draw = ImageDraw.Draw(rectangle_image)
# Define rectangle coordinates and properties
rectangle_coords = [(100, 100), (300, 200)]
fill_color = (255, 0, 0, 128)
# Add the rectangle to the rectangle image
draw.rectangle(rectangle_coords, fill=fill_color)
# Paste the rectangle image onto the original image
image.paste(rectangle_image, (0, 0), mask=rectangle_image)
# Save the modified image
image.save("modified_image.jpg")

И вот оно! Мы рассмотрели три различных метода добавления прямоугольников к изображениям с помощью Pillow. Независимо от того, предпочитаете ли вы модуль ImageDraw, ImageOpsили Image, Pillow предлагает универсальный набор инструментов, позволяющий раскрыть ваш творческий потенциал в манипулировании изображениями. Так что давайте, попробуйте, и пусть ваши изображения сияют красиво добавленными прямоугольниками!