Skip to main content

Barcode rendering for Python 2 and 3 supporting QRcode, Aztec, PDF417, I25, Code128, Code39 and many more types.

Project description

https://img.shields.io/pypi/v/treepoem.svg https://img.shields.io/travis/YPlan/treepoem.svg

A cleverly named, but very simple python barcode renderer wrapping the BWIPP library and ghostscript command line tool, Python 2.7 and 3.3+ compatible.

Installation

Install from pip:

pip install treepoem

You’ll also need Ghostscript installed. On Ubuntu/Debian this can be installed with:

apt-get install ghostscript

On Mac OS X use:

brew install ghostscript

Otherwise refer to your distribution’s package manager, though it’s likely to be called ghostscript too.

API

generate_barcode(barcode_type, data, options)

Generates a barcode and returns it as a PIL image file object (specifically, a PIL.EpsImagePlugin.EpsImageFile).

barcode_type is the name of the barcode type to generate (see below).

data is the string of data to embed in the barcode - the amount that can be embedded varies by type.

options is a dictionary of strings-to-strings of extra options to be passed to BWIPP, as per its docs.

For example, this generates a QR code image, and saves it to a file using standard PIL Image.save():

>>> import treepoem
>>> image = treepoem.generate_barcode(
...     barcode_type='qrcode',  # One of the BWIPP supported codes.
...     data='barcode payload',
...     options={},
... )
>>> image.save('barcode.png')

barcode_types

This is a set of the ~100 names of the barcode types that the vendored version of BWIPP supports. If you’re looking for whether a specific type is supported, check here.

The library is tested with these specific, common types:

What’s so clever about the name?

Barcode.

Bark ode.

Tree poem.

History

1.3.2 (2017-10-22)

  • Upgrade BWIPP from 2017-07-10 to 2017-10-19. This has a few bug fixes. You can read its changelog in the vendored copy in the treepoem repo.

1.3.1 (2017-08-24)

  • Upgrade BWIPP from 2017-06-20 to 2017-07-10. This has a few bug fixes. You can read its changelog in the vendored copy in the treepoem repo.

1.3.0 (2017-06-21)

  • Upgrade BWIPP from 2015-11-24 to 2017-06-20. This has a number of bug fixes, and supports more barcode types. It has also changed the pixel-for-pixel output of some formats, although they still encode the same information - notably QR codes, which are tested in treepoem's test suite. You can read its changelog in the vendored copy in the treepoem repo.

1.2.0 (2017-06-21)

  • Add treepoem.barcode_types, a set of all the names of supported barcode types, and error if asked to generate a barcode of an unknown type.

1.1.0 (2017-04-13)

  • Support Windows.

1.0.1 (2016-03-30)

  • Add the missing BWIPP files.

1.0.0 (2016-03-23)

  • Use $PATH to find gs binary.

  • Rename PostscriptError to TreepoemError.

  • Add basic setup.py.

  • Setup Travis CI build.

  • Setup Tox

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

treepoem-1.3.2.tar.gz (345.9 kB view details)

Uploaded Source

Built Distribution

treepoem-1.3.2-py2.py3-none-any.whl (347.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file treepoem-1.3.2.tar.gz.

File metadata

  • Download URL: treepoem-1.3.2.tar.gz
  • Upload date:
  • Size: 345.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for treepoem-1.3.2.tar.gz
Algorithm Hash digest
SHA256 67c59b0f067c0e404b52ffba105f59b0b0bf13205750da16314b1bcfc507261c
MD5 705a691cc708cff589a15579ead08a38
BLAKE2b-256 09ebd47d1d9f4a02fab6fc414af206f99b78375fafbcfa5d93a0edf7ce727c8b

See more details on using hashes here.

File details

Details for the file treepoem-1.3.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for treepoem-1.3.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 540df4399b20ccd524ae700fd31f01bf65c7ab3df44ab717a703e880fb7274c0
MD5 6a00c3812d3a16aaa3c6a6d4595615df
BLAKE2b-256 aa962b694ece48663350685c0dbac415dbfbf16c3ace754d0e73635ad820d339

See more details on using hashes here.

Supported by

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