python: reportlab, как удалить черные рамки с изображения
Я пытаюсь создать PDF-файл, используя python reportlab, но кажется, что изображение отображается со странной черной рамкой в PDF.
Вот код:
# Standalone script to generate pdf lessons
from reportlab.pdfgen import canvas
def hello(c):
c.drawImage("./media/files/1.png", 0, 600, 350, 350)
c = canvas.Canvas("hello.pdf")
hello(c)
c.showPage()
c.save()
Изображение, которое я пытаюсь добавить, находится здесь
Может кто-нибудь посоветовать, почему появилась черная линия слева и как это исправить?
1 ответ
Решение
Проблема не с рамкой, скорее у вашей шахматной доски есть прозрачные пиксели справа и снизу, а reportlab не распознает альфа-канал и окрашивает прозрачную часть в черный:
С помощью mask='auto'
говорит drawImage использовать альфа-канал в вашем PNG, поэтому фон просвечивает:
c.drawImage("./media/files/1.png", 0, 600, 350, 350, mask='auto')