применение художественного оформления изображения (граница) в Python (программно)

Я ищу способ создать границу в Python. Есть ли любая библиотека в Python, который мы можем импортировать для создания границы.

Обратите внимание, что я не хочу использовать любые маски изображения для создания этого эффекта (например, Я не хочу использовать любой пакет редактирования изображение как GIMP для создания маски изображения границы).

Вот то, что я ищу:

import fooImageBorders 
import Image 

foo = Image.open("someImage.jpg")
foo2 = fooImageBorders.bevel(foo, color = black)

... Я могу записать свои собственные методы для добавления границ.. но если бы уже существует что-то вроде этого там с исчерпывающим набором параметров границ, я хотел бы использовать его.

Я посмотрел на документацию PIL и не мог найти способ сделать это. У меня есть Windows XP и, кажется, нет способа установить PythonMagick любой для Python 2.6, если у Вас нет cygwin.

5
задан Cœur 14 November 2019 в 13:15
поделиться

1 ответ

foo2 = foo.copy()
draw = ImageDraw.Draw(foo2)
for i in range(width):
    draw.rectangle([i, i, foo2.size[0]-i-1, foo2.size[1]-i-1], outline = color)

foo2 будет иметь ширину -пиксельную границу цвета .

Если Вам нужны разные цветные границы с каждой стороны, Вы можете заменить .прямоугольник на повторяющиеся вызовы .линии .

Если Вы хотите, чтобы граница не закрывала какую-либо часть существующего изображения, используйте это вместо foo.copy().

foo2 = Image.new(foo.mode, (foo.size[0] + 2*width, foo.size[1] + 2*width))
foo2.paste(foo, (width, width))
1
ответ дан 18 December 2019 в 13:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: