Skip to main content

PDF generation in python using wkhtmltopdf suitable for heroku

Project description

codecov.io Build Status PyPI

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).

Install

pip install python-pdf

(pydf was taken, but I guess python-pdf is a clearer name anyway.)

Basic Usage

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)

API

generate_pdf(source, [**kwrags])

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 get

  • quiet: bool

  • grayscale: bool

  • lowquality: bool

  • margin_bottom: string eg. 10mm

  • margin_left: string eg. 10mm

  • margin_right: string eg. 10mm

  • margin_top: string eg. 10mm

  • orientation: Portrait or Landscape

  • page_height: string eg. 10mm

  • page_width: string eg. 10mm

  • page_size: string: A4, Letter, etc.

  • image_dpi: int default 600

  • image_quality: int default 94

  • extra_kwargs: any exotic extra options for wkhtmltopdf

Returns string representing pdf

get_version()

Get version of pydf and wkhtmltopdf binary

get_help()

get help string from wkhtmltopdf binary uses -h command line option

get_extended_help()

get extended help string from wkhtmltopdf binary uses -H command line option

execute_wk(*args)

Low level function to call wkhtmltopdf, arguments are added to wkhtmltopdf binary and passed to subprocess with not processing.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-pdf-0.22.tar.gz (14.6 MB view details)

Uploaded Source

File details

Details for the file python-pdf-0.22.tar.gz.

File metadata

  • Download URL: python-pdf-0.22.tar.gz
  • Upload date:
  • Size: 14.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for python-pdf-0.22.tar.gz
Algorithm Hash digest
SHA256 7ddd6d1ee7d0e3d414aaabfe98fc82df83f4d8b2b2756986886d2e1c48b9459c
MD5 c56ff3aced594410d9e6e46178950faa
BLAKE2b-256 0db873c64845e5f192291d4920a378b3fafbaf4df25b42fa351bee00b63573ae

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page