Skip to main content

A 100% standalone Barcode Python API for Processing Barcode Files

Project description

Python Barcode Generation & Recognition API

Product PageDocumentationExamplesForumTemporary LicenseCustomized Demo

Foo

Spire.Barcode for Python is a powerful and flexible Python API for barcode generation and recognition. It is designed to cater to the needs of developers to integrate barcode processing capabilities into their Python applications.

With support for various barcode formats, including 1D and 2D barcodes, this library streamlines the procedures involved in generating, reading, and scanning barcodes, making it suitable for a variety of use cases, such as inventory management, product labeling, document tracking, and more.

Key Features

  • Barcode Generation: Easily generate barcodes in different formats, such as EAN-13, Code 128, and QR Code.
  • Barcode Recognition: Accurately detect and decode barcodes, regardless of their orientation or position within an image.
  • Image Processing: High-quality barcode rendering on a variety of image formats, including Bitmap, JPG, PNG, EMF, TIFF, GIF, and WMF.
  • Customization Options: Customize barcode images by setting parameters like border style, color, width, and margins. Rotate barcodes at any angle and allow insertion of an image in the center.
  • Easy Integration: Seamlessly integrate Spire.Barcode for Python into your application to perform bracode generation & recognition functions with a few lines of code, saving development time and effort.

Supported Barcode Types:

  • CODE_25
  • CODABAR
  • CODE_11
  • INTERLEAVED_25
  • CODE_39
  • CODE_39_EXTENDED
  • CODE_93
  • CODE_93_EXTENDED
  • CODE_128
  • EAN_8
  • EAN_13
  • EAN_128
  • EAN_14
  • SCC_14
  • SSCC_18
  • ITF_14
  • ITF_6
  • UPCA
  • UPCE
  • POST_NET
  • SINGAPORE_POST_4_STATE
  • PLANET
  • MSI
  • RSS_14
  • RSS_14_TRUNCATED
  • RSS_LIMITED
  • RSS_EXPANDED
  • USPS
  • SWISS_POST_PARCEL
  • PZN
  • OPC
  • DEUTSCHE_POST_IDENTCODE
  • DEUTSCHE_POST_LEITCODE
  • ROYAL_MAIL_4_STATE
  • DATA_MATRIX
  • QR_CODE
  • PDF_417
  • PDF_417_MACRO

Generate a Code-128 Barcode in Python

from spire.barcode import *

# Function to write all bytes to a file
def WriteAllBytes(fname: str, data):
    with open(fname, "wb") as fp:
        fp.write(data)
    fp.close()

# Create an instance of BarcodeSettings
barcodeSettings = BarcodeSettings()

# Set the type of barcode to Code128
barcodeSettings.Type = BarCodeType.Code128

# Set the data for the barcode
barcodeSettings.Data = "12345"

# Set the Code128SetMode type of barcode to Auto
barcodeSettings.Code128SetMode = Code128SetMode.Auto

# Create an instance of BarCodeGenerator with the specified settings
barCodeGenerator = BarCodeGenerator(barcodeSettings)

# Generate the image for the barcode
barcodeimage = barCodeGenerator.GenerateImage()

# Write the PNG image to disk
WriteAllBytes("Code128.png", barcodeimage)

Generate QR Code with a Logo Image in Python

from spire.barcode import *

# Function to write all bytes to a file
def WriteAllBytes(fname:str,data):
    fp = open(fname,"wb")
    fp.write(data)
    fp.close()

# Initialize a new instance of BarcodeSettings
barcodeSettings = BarcodeSettings()

# Set the barcode type to QR Code
barcodeSettings.Type = BarCodeType.QRCode

# Specify the background color as WhiteSmoke
barcodeSettings.BackColor = Color.get_WhiteSmoke()

# Set the QR Code data mode to Byte
barcodeSettings.QRCodeDataMode = QRCodeDataMode.Byte

# Choose the error correction level (ECL) as M
barcodeSettings.QRCodeECL = QRCodeECL.M

# Set whether to display text at the bottom of the barcode
barcodeSettings.ShowTextOnBottom = True

# Define the horizontal offset (not sure what this does exactly)
barcodeSettings.X = 3

# Store the data to be encoded in variables and set it on the settings
data = "ABC 123456789"
barcodeSettings.Data2D = data
barcodeSettings.Data = data

# Add a logo image to the QR Code
barcodeSettings.SetQRCodeLogoImage("data/Logo.png")

# Create a new instance of BarCodeGenerator using the provided settings
barCodeGenerator = BarCodeGenerator(barcodeSettings)

# Generate the barcode image
barcodeimage = barCodeGenerator.GenerateImage()

# Write the resulting image to a file
WriteAllBytes("AddLogoImageQRCode.png", barcodeimage)

Scan a Barcode Image in Python

from spire.barcode import *

# Function to append all lines of text to a file
def AppendAllText(fname: str, text: List[str]):
    # Open the file in write mode
    fp = open(fname, "w")

    # Iterate over each line of text
    for s in text:
        # Write the line to the file
        fp.write(s)

    # Close the file handle
    fp.close()

# Use BarcodeScanner class to scan a file using the specified barcode type 
strCode = BarcodeScanner.ScanFileWithBarCodeType("data/QRCode.png",BarCodeType.QRCode)

# Append all scanned strings to a text file
AppendAllText("ScanFileWithBarCodeType.txt",strCode)

Product PageDocumentationExamplesForumTemporary LicenseCustomized Demo

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

spire_barcode-7.2.12-py3-none-win_amd64.whl (12.5 MB view details)

Uploaded Python 3Windows x86-64

spire_barcode-7.2.12-py3-none-manylinux_2_31_x86_64.whl (18.9 MB view details)

Uploaded Python 3manylinux: glibc 2.31+ x86-64

spire_barcode-7.2.12-py3-none-macosx_10_7_universal.whl (24.2 MB view details)

Uploaded Python 3macOS 10.7+ universal (x86-64, i386, PPC64, PPC)

File details

Details for the file spire_barcode-7.2.12-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for spire_barcode-7.2.12-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 f46bc505c55d87fb12bcdd83669e2f7bd193f2f06269eb29d96d2acad7687a5c
MD5 f774a0056b8fa116cb54aecb16a1b63c
BLAKE2b-256 3a039618cbfcf0d71f8093487fb2ed8df0299551fd7e39ff9dfac479cdcbded7

See more details on using hashes here.

File details

Details for the file spire_barcode-7.2.12-py3-none-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for spire_barcode-7.2.12-py3-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 78a628f743bd00fa0f4583c3e20effd81c1c1be168955ffdbe13aa47d3f07d55
MD5 72a64c09f4b61a211a299bc6495f5d98
BLAKE2b-256 52365dec1316c09ebb46473c90c1dc87414a8a1288f2acfd6349531dbfa7325b

See more details on using hashes here.

File details

Details for the file spire_barcode-7.2.12-py3-none-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for spire_barcode-7.2.12-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b269ce64a594619150f3e7a46881d027b032b7ee2ae0cb56fc55c667e8a6dc7f
MD5 7550ba993c0fcc75c74e5773383bb5ac
BLAKE2b-256 61cf26c0f7690bbafd4ded5d805187a281738e8528b98dca4ff7e09ddbeb78db

See more details on using hashes here.

File details

Details for the file spire_barcode-7.2.12-py3-none-macosx_10_7_universal.whl.

File metadata

File hashes

Hashes for spire_barcode-7.2.12-py3-none-macosx_10_7_universal.whl
Algorithm Hash digest
SHA256 6706ef2c58a688e7ee1e091f440884a54500fe30258309c423d3d17ac0e2c54d
MD5 c1aa04e56bb1f7e54a1689f792d2384e
BLAKE2b-256 b89d94ab4ad2c9e2fda817c3027fb640790f8573a22d73325aecb77badcf8211

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