Skip to main content

A PDF417 barcode decoder

Project description

pdf417decoder

Image of a PDF417 barcode

pdf417decoder is a pure Python library for decoding PDF417 barcodes.

Reader is capable of Error Detection and Correction according to the standards for PDF417 which you can read about here ISO/IEC 15438:2006 or download an older version of the PDF this website.

Installation

Use the package manager pip to install pdf417decoder.

pip install pdf417decoder

Usage

from PIL import Image as PIL
from pdf417decoder import PDF417Decoder

image = PIL.open("barcode.png")
decoder = PDF417Decoder(image)

if (decoder.decode() > 0):
    decoded = decoder.barcode_data_index_to_string(0)

Testing Results

This library was tested using pdf417gen to create random barcodes and blurred with OpenCV to test error correction. PyTest is used with several test images to show the libraries capability to decode barcodes in the following test cases.

  • Binary data
  • Multiple barcodes
  • Upside down barcode
  • Rotated barcode
  • Error Corrections: Corrupted data due to blurred barcode
  • Error Corrections: Missing data due marks concealing barcode
  • Character type transitions (Upper, Lower, Mixed and Punctuation)

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

CPOL

This project is a derivative of code licensed under the Code Project Open License (CPOL). The Code Project Open License (CPOL) is intended to provide developers who choose to share their code with a license that protects them and provides users of their code with a clear statement regarding how the code can be used.

Credits

Source code is a port of a C# Library created and maintained by Uzi Granot. PDF417 Barcode Decoder .NET Class Library and Two Demo Apps

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

pdf417decoder-1.0.3.tar.gz (33.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pdf417decoder-1.0.3-py3-none-any.whl (37.0 kB view details)

Uploaded Python 3

File details

Details for the file pdf417decoder-1.0.3.tar.gz.

File metadata

  • Download URL: pdf417decoder-1.0.3.tar.gz
  • Upload date:
  • Size: 33.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.0

File hashes

Hashes for pdf417decoder-1.0.3.tar.gz
Algorithm Hash digest
SHA256 76fd66070951526d3510a4f31e2cdfd8039d8a939e92da1a896d76c95c2c1c21
MD5 e38b2a1732c14a27ce5825f28fbedd5c
BLAKE2b-256 760161bdd39b793df2fd928c3333dab49c14ec29a8de8fe3b4170532b4a0da17

See more details on using hashes here.

File details

Details for the file pdf417decoder-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: pdf417decoder-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 37.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.0

File hashes

Hashes for pdf417decoder-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2b359058466f0ec81505db4ca73c2f5938c387968d547197d73c3ca901c8cb5c
MD5 d451947906087e8e02ce598aa671e2ee
BLAKE2b-256 e70ec0b19a6151698b80e64a9e7573524401d34ddff3d6a2d700d48e865b23e8

See more details on using hashes here.

Supported by

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