0

我正在尝试使用 python reportlab 生成一个 pdf 文件,但似乎图像在 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()

我要添加的图像在这里在此处输入图像描述

有人可以建议为什么左边的黑线出现了,以及如何解决它?

4

1 回答 1

3

问题不在于边框,而是您的棋盘在右侧和底部有透明像素,reportlab 无法识别 alpha 通道并将透明部分绘制为黑色:

在此处输入图像描述

Usingmask='auto'告诉 drawImage 在你的 PNG 中使用 alpha 通道,所以背景通过以下方式显示:

c.drawImage("./media/files/1.png", 0, 600, 350, 350, mask='auto')
于 2011-03-21T00:25:25.727 回答