Create standard barcodes with Python. No external modules needed (optional PIL support included).
This library provides a simple way to create barcodes using only the Python standard lib. The barcodes are created as SVG objects.
Please report any bugs at https://github.com/WhyNotHugo/python-barcode/issues
- Setuptools/distribute for installation.
- Python 3.5 or above
- Program to open SVG objects (your browser should do it)
- Optional: PIL to render barcodes as images (PNG, JPG, …)
The best way is to use pip: pip install python-barcode.
You can also install manually by downloading the tarball, extracting it, and running python setup.py install.
- Code 39
- Code 128
- Add documentation
- Add more codes
>>> import barcode >>> barcode.PROVIDED_BARCODES [u'code39', u'code128', u'ean', u'ean13', u'ean8', u'gs1', u'gtin', u'isbn', u'isbn10', u'isbn13', u'issn', u'jan', u'pzn', u'upc', u'upca'] >>> EAN = barcode.get_barcode_class('ean13') >>> EAN <class 'barcode.ean.EuropeanArticleNumber13'> >>> ean = EAN(u'5901234123457') >>> ean <barcode.ean.EuropeanArticleNumber13 object at 0x00BE98F0> >>> fullname = ean.save('ean13_barcode') >>> fullname u'ean13_barcode.svg' # Example with PNG >>> from barcode.writer import ImageWriter >>> ean = EAN(u'5901234123457', writer=ImageWriter()) >>> fullname = ean.save('ean13_barcode') u'ean13_barcode.png' # New in v0.4.2 >>> from StringIO import StringIO >>> fp = StringIO() >>> ean.write(fp) # or >>> f = open('/my/new/file', 'wb') >>> ean.write(f) # PIL (ImageWriter) produces RAW format here # New in v0.5.0 >>> from barcode import generate >>> name = generate('EAN13', u'5901234123457', output='barcode_svg') >>> name u'barcode_svg.svg' # with file like object >>> fp = StringIO() >>> generate('EAN13', u'5901234123457', writer=ImageWriter(), output=fp) >>>
Now open ean13_barcode.[svg|png] in a graphic app or simply in your browser and see the created barcode. That’s it.
$ pybarcode create "My Text" outfile New barcode saved as outfile.svg. $ pybarcode create -t png "My Text" outfile New barcode saved as outfile.png. Try `pybarcode -h` for help.
- Fix pushing of releases to GitHub.
- Fix crashes when attempting to use the CLI app.
- Properly include version numbers in SVG comments.
- Improve README rendering, and point to this fork’s location (the outdated README on PyPI was causing some confusion).
- First release under the name python-barcode.
This project is a fork of pyBarcode, which, apparently, is no longer maintained. v0.8.0 is our first release, and is the latest master from that parent project.
- Code 128 added.
- Data for charsets and bars moved to subpackage barcode.charsets.
- Merged in some improvements.
- Fixed some issues with fontsize and fontalignment.
- Added Python 3 support. It’s not well tested yet, but the tests run without errors with Python 3.3. Commandline script added.
- Changed save and write methods to take the options as a dict not as keyword arguments (fix this in your code). Added option to left align the text under the barcode. Fixed bug with EAN13 generation.
- Added new generate function to do all generation in one step.
- Moved writer from a subpackage to a module (this breaks some existing code). UPC is now rendered as real UPC, not as EAN13 with the leading “0”.
- Fixed bug in new write method (related to PIL) and updated docs.
- Added write method to support file like objects as target.
- Bugfix release. Removed redundancy in input validation.
- EAN8 was broken. It now works as expected.
- Removed **options from writers __init__ method. These options never had effect. They were always overwritten by default_options.
- New config option available: text_distance (the distance between barcode and text).
- Basic documentation included. The barcode object now has a new attribute called raw to have the rendered output without saving to disk.
- Support for rendering barcodes as images is implemented. PIL is required to use it.
- Compression for SVG output now works.
- Writer API has changed for simple adding new (own) writers.
- SVG output is now generated with xml.dom module instead of stringformatting (makes it more robust).
- API of render changed. Now render takes keyword arguments instead of a dict.
- More tests added.
- First release.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|python_barcode-0.9.0-py3-none-any.whl (214.4 kB) Copy SHA256 hash SHA256||Wheel||py3|
|python-barcode-0.9.0.tar.gz (225.8 kB) Copy SHA256 hash SHA256||Source||None|