Нарисуйте закругленные углы на фото с помощью PIL
Мой сайт заполнен закругленными углами на каждой коробке и картинке, за исключением эскизов загруженных пользователем фотографий.
Как я могу использовать библиотеку изображений Python для "рисования" белых или прозрачных закругленных углов на каждом эскизе?
2 ответа
От Фредрика Лунда:
создайте изображение маски с закругленными углами (либо с помощью вашего любимого графического редактора, либо с помощью ImageDraw/aggdraw или чего-то подобного).
в вашей программе загрузите изображение маски и вырежьте четыре угла, используя "обрезать".
затем для каждого изображения создайте миниатюру как обычно и используйте угловые маски по углам миниатюры.
если вы хотите прозрачные углы, создайте изображение "L" с тем же размером, что и миниатюра, используйте "paste", чтобы добавить маски углов в это изображение, а затем "putalpha", чтобы прикрепить альфа-слой к миниатюре.
если вы хотите сплошные углы, используйте вместо этого "вставить" на миниатюру, используя сплошной цвет в качестве источника.
http://mail.python.org/pipermail/python-list/2008-January/472508.html
Не лучше ли (если предположить, что HTML - это результат) использовать HTML и CSS, чтобы наложить на эти картинки несколько скругленных границ? Таким образом, если вы хотите изменить внешний вид своего сайта, вам не нужно выполнять никакую повторную обработку изображений, и вам не нужно вообще обрабатывать изображения.