Главная » 2025 » Декабрь » 10 » UImage: добавление рамки вокруг изображения или с одной стороны
20:19
UImage: добавление рамки вокруг изображения или с одной стороны

UImage: добавление рамки вокруг изображения или с одной стороны

Добавить рамку вокруг изображения позволяет статический метод border_im() из класса UImageChange. Формат метода:

UImageChange.border_im(<UImage>, size=5,
                       bordercolor=UColor("gray"),
                       bgcolor=UColor("white"))

В качестве первого параметра указывается объект UImage. Толщина рамки задается во втором параметре (по умолчанию рисуется рамка толщиной 5px). В параметре bordercolor можно указать цвет рамки в виде объекта UColor. Если параметр не указан, то рамка будет серого цвета. В параметре bgcolor можно задать цвет фона в виде объекта UColor. Если параметр не указан, то фон будет белым. Метод возвращает объект UImage или значение None в случае ошибки. Операция выполняется с помощью библиотеки ImageMagick. Пример добавления рамки черного цвета толщиной 3px:

from unicross_image.ucolor import UColor
from unicross_image.uimage import UImage
from unicross_image.uimagechange import UImageChange

img = UImage.load("foto.png")
img2 = UImageChange.border_im(img, size=3,
                              bordercolor=UColor("black"),
                              bgcolor=UColor("white"))
if img2:
    print(img2)
    img2.save("test.png")
else:
    print("Ошибка при выполнении операции")

Добавить рамку сверху или снизу изображения позволяет статический метод splice_im() из класса UImageChange. Формат метода:

UImageChange.splice_im(<UImage>, height=50, top=False,
                       bgcolor=UColor("black"))

В качестве первого параметра указывается объект UImage. Толщина рамки задается во втором параметре (по умолчанию рисуется рамка толщиной 50px). Если в параметре top указано значение True, то рамка будет нарисована сверху. По умолчанию рамка рисуется снизу изображения. В параметре bgcolor можно задать цвет фона в виде объекта UColor. Если параметр не указан, то фон будет черным. Метод возвращает объект UImage или значение None в случае ошибки. Операция выполняется с помощью библиотеки ImageMagick. Пример добавления рамки зеленого цвета толщиной 100px сверху изображения:

from unicross_image.ucolor import UColor
from unicross_image.uimage import UImage
from unicross_image.uimagechange import UImageChange

img = UImage.load("foto.png")
img2 = UImageChange.splice_im(img, height=100, top=True,
                              bgcolor=UColor("green"))
if img2:
    print(img2)
    img2.save("test.png")
else:
    print("Ошибка при выполнении операции")

Добавить выпуклую или вогнутую рамку вокруг изображения позволяет статический метод border_3d_im() из класса UImageChange. Формат метода:

UImageChange.border_3d_im(<UImage>, size=5, raised=True)

В качестве первого параметра указывается объект UImage. Толщина рамки задается во втором параметре (по умолчанию рисуется рамка толщиной 5px). Рамка рисуется внутри изображения, поэтому размер изображения не изменяется. Если в параметре raised указано значение False, то рамка будет нарисована вогнутой. По умолчанию рамка рисуется выпуклой. Метод возвращает объект UImage или значение None в случае ошибки. Операция выполняется с помощью библиотеки ImageMagick. Пример добавления  вогнутой  рамки черного цвета толщиной 10px:

from unicross_image.ucolor import UColor
from unicross_image.uimage import UImage
from unicross_image.uimagechange import UImageChange

img = UImage.load("foto.png")
img2 = UImageChange.border_3d_im(img, size=10, raised=False)
if img2:
    print(img2)
    img2.save("test.png")
else:
    print("Ошибка при выполнении операции")

Добавить рамку вокруг изображения и повернуть его на некоторый угол (создать эффект Поляроида) позволяет статический метод polaroid_im() из класса UImageChange. Формат метода:

UImageChange.polaroid_im(<UImage>, angle=0,
                         bordercolor=UColor("gray"),
                         shadowcolor=UColor("white"))

В качестве первого параметра указывается объект UImage. Угол поворота (от -45 до 45 градусов) задается во втором параметре (по умолчанию угол поворота выбирается случайным образом). Вращение выполняется по часовой стрелке. В параметре bordercolor можно указать цвет рамки в виде объекта UColor. Если параметр не указан, то рамка будет серого цвета. В параметре shadowcolor можно задать цвет фона для тени в виде объекта UColor. Если параметр не указан, то тень будет белой. Фон в местах поворота будет прозрачным. Метод возвращает объект UImage или значение None в случае ошибки. Операция выполняется с помощью библиотеки ImageMagick. Пример:

from unicross_image.ucolor import UColor
from unicross_image.uimage import UImage
from unicross_image.uimagechange import UImageChange

img = UImage.load("foto.png")
img2 = UImageChange.polaroid_im(img, angle=-5,
                                bordercolor=UColor("green"),
                                shadowcolor=UColor("red"))
if img2:
    print(img2)
    img2.save("test.png")
else:
    print("Ошибка при выполнении операции")

Добавить овальную рамку вокруг изображения позволяет статический метод vignette_im() из класса UImageChange. Формат метода:

UImageChange.vignette_im(<UImage>, vcolor=UColor("transparent"),
                         radius=0, sigma=3, x=5, y=5)

В качестве первого параметра указывается объект UImage. В параметре vcolor можно указать цвет рамки в виде объекта UColor. Если параметр не указан, то рамка будет прозрачной. Параметры radius и sigma задают коэффициенты для эффекта размытия границы рамки. В параметре x можно указать горизонтальное смещение внутрь изображения. Параметр y задает вертикальное смещение внутрь изображения. Метод возвращает объект UImage или значение None в случае ошибки. Операция выполняется с помощью библиотеки ImageMagick. Пример:

from unicross_image.ucolor import UColor
from unicross_image.uimage import UImage
from unicross_image.uimagechange import UImageChange

img = UImage.load("foto.png")
img2 = UImageChange.vignette_im(img, vcolor=UColor("green"),
                                radius=0, sigma=3, x=5, y=5)
if img2:
    print(img2)
    img2.save("test.png")
else:
    print("Ошибка при выполнении операции")

Класс входит в состав графической библиотеки UImage для Python 3. Описание библиотеки UImage

Категория: UImage | Просмотров: 6 | Добавил: unicross | Теги: PIL, Python, UImage, ImageMagick | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Категории раздела
Списки слов [10]
Списки слов и словари
OCR [4]
Оптическое распознавание символов
UImage [80]
Графическая библиотека для Python
UImage C [7]
Графическая библиотека для Python
Программы [4]
Полезные программы
Прочее [3]
Другие темы
Календарь
«  Декабрь 2025  »
Пн Вт Ср Чт Пт Сб Вс
1234567
891011121314
15161718192021
22232425262728
293031