Как Вы составляете изображение на другое изображение с PIL в Python?

Я должен взять изображение и поместить его на новое, генерировал белый фон для него, чтобы быть преобразованным в загружаемые обои для рабочего стола. Таким образом, процесс пошел бы:

  1. Генерируйте новый, все белое изображение с 1440x900 размеры
  2. Поместите существующее изображение в вершину, центрируемую
  3. Сохраните как единственное изображение

В PIL я вижу ImageDraw объект, но ничто не указывает, что он может потянуть существующие данные изображения на другое изображение. Предложения или ссылки кто-либо может рекомендовать?

62
задан Sebastian 11 March 2013 в 14:07
поделиться

2 ответа

Это может быть выполнено с помощью метода paste экземпляра изображения:

from PIL import Image
img = Image.open('/path/to/file', 'r')
img_w, img_h = img.size
background = Image.new('RGBA', (1440, 900), (255, 255, 255, 255))
bg_w, bg_h = background.size
offset = ((bg_w - img_w) // 2, (bg_h - img_h) // 2)
background.paste(img, offset)
background.save('out.png')

Этот и многие другие уловки PIL можно найти на Учебное пособие по PIL Нади Альрамли

114
ответ дан 24 November 2019 в 16:44
поделиться

Image.blend () ? [ ссылка ]

Или, еще лучше, Image.paste () , та же ссылка.

0
ответ дан 24 November 2019 в 16:44
поделиться
Другие вопросы по тегам:

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