Сгенерируйте html в pdf с помощью xhtml2pdf в проекте django
У меня есть HTML-страница, содержащая несколько таблиц. При преобразовании ее в PDF с помощью xhtml2pdf она работает нормально, если развернуть только несколько таблиц. Однако, если я разверну больше таблиц, я столкнусь с ограничением размера, при котором PDF-файл будет пустым, если содержимое превысит определенный размер (30 Мб).
Views.py
html-шаблон
Как я могу обеспечить правильную загрузку большого Pdf-файла?
Просто увеличьте емкость буфера, который будет использоваться синтаксическим анализатором. По умолчанию синтаксический анализатор использует буфер размером 100 * 1024
байт, где 1024
байта равны 1
килобайтам.
Поскольку размер документа может достигать 20 * 1024 * 1024
байт, передайте это значение в xhtml2pdf.pisa.CreatePDF()
примерно так:
xhtml2pdf.pisa.CreatePDF(
src=html.encode('UTF-8'),
dest=response,
encoding='UTF-8',
capacity=20*1024*1024,
show_error_as_pdf=True,
pdf_options=pdf_options
)