Как конвертировать PNG в JPEG с помощью подушки, когда цвет изображения черный? - PullRequest
0 голосов
/ 07 июня 2018

Я просмотрел ссылки ниже, чтобы узнать, как конвертировать PNG в JPG:

Преобразование работает, как и ожидалось, но если сам цвет изображения не черный!У меня есть изображение ниже: pen edit

И код:

im.convert('RGB').save('test.jpg', 'JPEG')

Это делает все изображение черным.Как мне преобразовать этот PNG в правильный формат и цвет?Цвет может быть от черного до белого.

1 Ответ

0 голосов
/ 07 июня 2018

Преобразуйте это так, единственное, что нужно сделать, это выяснить, какой цвет фона установить:

from PIL import Image
im = Image.open(r"C:\pathTo\pen.png")

fill_color = (120,8,220)  # your new background color

im = im.convert("RGBA")   # it had mode P after DL it from OP
if im.mode in ('RGBA', 'LA'):
    background = Image.new(im.mode[:-1], im.size, fill_color)
    background.paste(im, im.split()[-1]) # omit transparency
    im = background

im.convert("RGB").save(r"C:\temp\other.jpg")

recolored

...