PHP library for generating linear and 2D barcodes.
If this library saves you time, please consider supporting development via PayPal.
tc-lib-barcode is a pure-PHP barcode generation library with broad support for industrial, retail, logistics, and document automation use cases.
| Namespace | \Com\Tecnick\Barcode |
| Author | Nicola Asuni info@tecnick.com |
| License | GNU LGPL v3 - see LICENSE |
| API docs | https://tcpdf.org/docs/srcdoc/tc-lib-barcode |
| Packagist | https://packagist.org/packages/tecnickcom/tc-lib-barcode |
| Format | Description |
|---|---|
| C39 | CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9 |
| C39+ | CODE 39 with checksum |
| C39E | CODE 39 EXTENDED |
| C39E+ | CODE 39 EXTENDED + CHECKSUM |
| C93 | CODE 93 - USS-93 |
| S25 | Standard 2 of 5 |
| S25+ | Standard 2 of 5 + CHECKSUM |
| I25 | Interleaved 2 of 5 |
| I25+ | Interleaved 2 of 5 + CHECKSUM |
| C128 | CODE 128 |
| C128A | CODE 128 A |
| C128B | CODE 128 B |
| C128C | CODE 128 C |
| EAN2 | 2-Digits UPC-Based Extension |
| EAN5 | 5-Digits UPC-Based Extension |
| EAN8 | EAN 8 |
| EAN13 | EAN 13 |
| UPCA | UPC-A |
| UPCE | UPC-E |
| MSI | MSI (Variation of Plessey code) |
| MSI+ | MSI + CHECKSUM (modulo 11) |
| CODABAR | CODABAR |
| CODE11 | CODE 11 |
| PHARMA | PHARMACODE |
| PHARMA2T | PHARMACODE TWO-TRACKS |
| Format | Description |
|---|---|
| AZTEC | AZTEC Code (ISO/IEC 24778:2008) |
| DATAMATRIX | DATAMATRIX (ISO/IEC 16022) |
| PDF417 | PDF417 (ISO/IEC 15438:2006) |
| QRCODE | QR-CODE |
| RAW | 2D RAW MODE comma-separated rows |
| RAW2 | 2D RAW MODE rows enclosed in square parentheses |
| Format | Description |
|---|---|
| POSTNET | POSTNET |
| PLANET | PLANET |
| RMS4CC | RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code) |
| KIX | KIX (Klant index - Customer index) |
| IMB | IMB - Intelligent Mail Barcode - Onecode - USPS-B-3200 |
| IMBPRE | IMB - Intelligent Mail Barcode - Onecode - USPS-B-3200 - pre-processed |
- HTML output for web previews
- Image-based rendering for downstream processing
- Configurable dimensions, padding, and color
- PNG Image
- SVG Image
- HTML DIV
- Unicode String
- Binary String
- PHP 8.1 or later
- Extensions:
bcmath,date,gd,pcre - Composer
composer require tecnickcom/tc-lib-barcode<?php
require_once __DIR__ . '/vendor/autoload.php';
$barcode = new \Com\Tecnick\Barcode\Barcode();
$bobj = $barcode->getBarcodeObj(
'QRCODE,H',
'https://tecnick.com',
-4,
-4,
'black',
[-2, -2, -2, -2]
)->setBackgroundColor('white');
echo $bobj->getHtmlDiv();For more formats and rendering options, see the example/ directory.
make deps
make help
make qaBuild artifacts and reports are generated in target/.
make rpm
make debFor system packages, bootstrap with:
require_once '/usr/share/php/Com/Tecnick/Barcode/autoload.php';Contributions are welcome. Please read CONTRIBUTING.md, CODE_OF_CONDUCT.md, and SECURITY.md before submitting a pull request.
Nicola Asuni - info@tecnick.com