如何使用 SimpleDocTemplate 在 reportlab pdf 上生成图像

时间:2021-02-09 16:30:22

标签: python pdf reportlab

在 pdf 上生成图像时遇到了一些麻烦。它可以在我使用 canvas.Canvas() 时找到,因为我可以使用 drawinlineImage() 函数。它将字节转换为图像。

但是,当我想使用表格时,我无法将对象转换为图像。

以下代码在 pdf 而非图像上返回

有没有办法使用请求在表格中生成图像?

谢谢


from reportlab.pdfgen import canvas
from reportlab.lib.units import inch, cm
from reportlab.lib.utils import ImageReader
from reportlab.platypus import SimpleDocTemplate, Table, Image
from reportlab.lib.pagesizes import letter

import urllib.request
import requests
from PIL import Image as PIL_Image
from PIL import ImageDraw
from io import BytesIO

loc = os.path.join(os.path.join(
    os.environ['USERPROFILE']), 'Desktop', 'test.pdf')

pdf = SimpleDocTemplate(loc)

r = requests.get(url)

i = PIL_Image.open(BytesIO(r.content))

table = Table([[i]])

elems = []
elems.append(table)
pdf.build(elems)

0 个答案:

没有答案