PDF generation in python using wkhtmltopdf.
Wkhtmltopdf binaries are precompiled and included in the package making pydf easier to use, in particular this means pydf works on heroku.
Based on pywkher but significantly extended.
Currently using wkhtmltopdf v. 0.12.2 (beta).
pip install python-pdf
(pydf was taken, but I guess python-pdf is a clearer name anyway.)
import pydf
pdf = pydf.generate_pdf('<h1>this is html</h1>')
open('test_doc.pdf', 'w').write(pdf)
pdf = pydf.generate_pdf('www.google.com')
open('google.pdf', 'w').write(pdf)
Generate a pdf from either a url or a html string.
After the html and url arguments all other arguments are passed straight to wkhtmltopdf
For details on extra arguments see the output of get_help() and get_extended_help()
All arguments whether specified or caught with extra_kwargs are converted
to command line args with '--' + original_name.replace('_', '-')
.
Arguments which are True are passed with no value eg. just --quiet, False and None arguments are missed, everything else is passed with str(value).
Arguments:
source
: html string to generate pdf from or url to getquiet
: boolgrayscale
: boollowquality
: boolmargin_bottom
: string eg. 10mmmargin_left
: string eg. 10mmmargin_right
: string eg. 10mmmargin_top
: string eg. 10mmorientation
: Portrait or Landscapepage_height
: string eg. 10mmpage_width
: string eg. 10mmpage_size
: string: A4, Letter, etc.image_dpi
: int default 600image_quality
: int default 94extra_kwargs
: any exotic extra options for wkhtmltopdf
Returns string representing pdf
Get version of pydf and wkhtmltopdf binary
get help string from wkhtmltopdf binary uses -h command line option
get extended help string from wkhtmltopdf binary uses -H command line option
Low level function to call wkhtmltopdf, arguments are added to wkhtmltopdf binary and passed to subprocess with not processing.