Django view that converts HTML to PDF using webkit - via pdfkit and wkhtmltopdf.
You need to install wkhtmltopdf.
The versions in Debian/Ubuntu repositories (installed using apt-get install wkhtmltopdf
)
have reduced functionality and you will most likely want to install one of the
stable binaries provided at http://wkhtmltopdf.org/downloads.html which provide
increased functionality (headless, patched Qt, better rendering support).
Installation of the pre-compiled binaries on Ubuntu is as simple as;
wget http://download.gna.org/wkhtmltopdf/0.12/0.12.3/wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
tar -xf wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
sudo cp -r wkhtmltox/* /usr/
pip install django-pdfkit
Simply use the class based PDFView
which is a drop in replacement for TemplateView
.
# urls.py
from django_pdfkit import PDFView
...
url(r'^my-pdf/$', PDFView.as_view(template_name='my-pdf.html'), name='my-pdf'),
...
Then in your browser goto http://localhost:8000/my-pdf/
and it will magically
render as a PDF.
See the docs for more information.
Alex Hayes <[email protected]>