diff options
Diffstat (limited to 'resumejson_converter/generators/pdf.py')
-rw-r--r-- | resumejson_converter/generators/pdf.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/resumejson_converter/generators/pdf.py b/resumejson_converter/generators/pdf.py new file mode 100644 index 0000000..de3e880 --- /dev/null +++ b/resumejson_converter/generators/pdf.py @@ -0,0 +1,35 @@ +import sys +import logging + +import pdfkit + + +def generate(html): + logging.info("PDF generation...") + + pdf_output_path = "out/out.pdf" + + import os + if not os.path.exists("out"): + os.makedirs("out", exist_ok=True) + + try: + config = pdfkit.configuration(wkhtmltopdf='/usr/bin/wkhtmltopdf') + options = { + 'quiet': '', + 'page-size': 'A4', + 'margin-top': '0in', + 'margin-right': '0in', + 'margin-bottom': '0in', + 'margin-left': '0in', + 'encoding': "UTF-8", + } + pdfkit.from_string( + html, + pdf_output_path, + configuration=config, + options=options) + except (IOError, OSError) as e: + logging.exception("Something append: {}".format(e)) + else: + logging.info("PDF generated at {}".format(pdf_output_path)) |