Ошибка модуля Python `aggdraw` (?): Видимый альфа-канал - PullRequest
1 голос
/ 04 августа 2011

Представьте себе простой скрипт:

from PIL import Image
from aggdraw import Draw, Brush

im = Image.new("RGBA", (600, 600), (0, 0, 0, 0))
draw = Draw(im)

brush = Brush("yellow")

draw.polygon(
             (
              50, 50,
              550, 60,
              550, 550,
              60, 550,
             ),
             None, brush
            )

draw.flush()
im.save("2.png")

И результат: enter image description here

(извините за большой размер, но это более понятно)

И проблема: Вы видите не желтые и не белые края? Это альфа-канал или что-то в этом роде.

Когда я пытаюсь сделать это только с объектом PIL Draw - он выглядит четко и хорошо, но не сглаживается.

Но с объектом aggdraw Draw он выглядит сглаженным, но с такими уродливыми грязными краями.

Мне нужны именно многоугольники с нестандартными боковыми углами. Простая коробка не то, что я хочу.

Пожалуйста, помогите мне с хорошим оптимистичным ответом, как решить эту проблему.

1 Ответ

1 голос
/ 24 октября 2011

Это потому, что ваш фон черный, но прозрачный.Если вы установите фоновое изображение на белый, вы не получите видимых краев.В моих простых тестах работает либо прозрачный, либо сплошной белый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...