Добавление страниц в холст отчета с URL-адреса PDF - PullRequest
0 голосов
/ 25 марта 2019

Привет. Я пытаюсь добавить страницу в файл PDF, который создаю с помощью reportlab, и вернуть его с помощью ответа Django. Страница, которую я пытаюсь добавить, взята с внешнего URL.

Я хотел бы добавить страницу без использования дополнительной библиотеки, такой как PyPDF или pdfrw. У меня есть ощущение, что это может быть связано с классом reportlabs Flowable. То, что я хотел бы знать, как:

  • читать PDF с URL
  • добавить страницу pdf в лабораторию отчетов pdf
  • если возможно, как этого добиться, используя только reportlab

Я создал холст следующим образом:

from reportlab.pdfgen.canvas import Canvas
from reportlab.lib.pagesizes import A6
from django.http import HttpResponse

  response = HttpResponse(content_type='application/pdf')
  response['Content-Disposition'] = 'attachment; filename="somefile.pdf"'
  canvas = Canvas(response, pagesize=A6)

И добавили контент и страницы, используя простые методы canvas:

  canvas.line(5*mm, 111*mm, 100*mm, 111*mm)
  canvas.line(5*mm, 83*mm, 100*mm, 83*mm)
  canvas.line(52*mm, 83*mm, 52*mm, 111*mm)
  canvas.showPage()

  canvas.drawString(10*mm, 78*mm,'ITEM DESCRIPTION: ')
  canvas.drawString(10*mm, 65*mm,'PAYMENT TYPE: ')
  canvas.drawString(10*mm, 53*mm,'SHIPPER ORDER ID: ')
  canvas.showPage()
  canvas.save()

  return response

Используя этот код, я могу вернуть PDF в качестве ответа. Но хотел бы знать, как добавить страницы из URL спасибо!

...