Barcode
barcode.php - Generate barcodes from a single PHP file. MIT license.
Install / Use
/learn @kreativekorp/BarcodeREADME
barcode.php
Generate barcodes from a single PHP file. MIT license.
- Output to PNG, GIF, JPEG, or SVG.
- Generates UPC-A, UPC-E, EAN-13, EAN-8, Code 39, Code 93, Code 128, Codabar, ITF, QR Code, and Data Matrix.
Use directly as a PHP script with GET or POST:
barcode.php?f={format}&s={symbology}&d={data}&{options}
e.g.
barcode.php?f=png&s=upc-e&d=06543217
barcode.php?f=svg&s=qr&d=HELLO%20WORLD&sf=8&ms=r&md=0.8
When using this method, you must escape non-alphanumeric characters with URL encoding, for example %26 for & or %2F for ?.
Or use as a library from another PHP script:
include 'barcode.php';
$generator = new barcode_generator();
/* Output directly to standard output. */
header("Content-Type: image/$format");
$generator->output_image($format, $symbology, $data, $options);
/* Create bitmap image and write to standard output. */
header('Content-Type: image/png');
$image = $generator->render_image($symbology, $data, $options);
imagepng($image);
imagedestroy($image);
/* Create bitmap image and write to file. */
$image = $generator->render_image($symbology, $data, $options);
imagepng($image, $filename);
imagedestroy($image);
/* Generate SVG markup and write to standard output. */
header('Content-Type: image/svg+xml');
$svg = $generator->render_svg($symbology, $data, $options);
echo $svg;
/* Generate SVG markup and write to file. */
$svg = $generator->render_svg($symbology, $data, $options);
file_put_contents($filename, $svg);
When using this method, you must NOT use URL encoding.
Options:
f - Format. One of:
png
gif
jpeg
svg
s - Symbology (type of barcode). One of:
upc-a code-39 qr dmtx
upc-e code-39-ascii qr-l dmtx-s
ean-8 code-93 qr-m dmtx-r
ean-13 code-93-ascii qr-q gs1-dmtx
ean-13-pad code-128 qr-h gs1-dmtx-s
ean-13-nopad codabar gs1-dmtx-r
ean-128 itf
d - Data. For UPC or EAN, use * for missing digit. For Codabar, use ABCD or ENT* for start and stop characters. For QR, encode in Shift-JIS for kanji mode.
w - Width of image. Overrides sf or sx.
h - Height of image. Overrides sf or sy.
sf - Scale factor. Default is 1 for linear barcodes or 4 for matrix barcodes.
sx - Horizontal scale factor. Overrides sf.
sy - Vertical scale factor. Overrides sf.
p - Padding. Default is 10 for linear barcodes or 0 for matrix barcodes.
pv - Top and bottom padding. Default is value of p.
ph - Left and right padding. Default is value of p.
pt - Top padding. Default is value of pv.
pl - Left padding. Default is value of ph.
pr - Right padding. Default is value of ph.
pb - Bottom padding. Default is value of pv.
bc - Background color in #RRGGBB format.
cs - Color of spaces in #RRGGBB format.
cm - Color of modules in #RRGGBB format.
tc - Text color in #RRGGBB format. Applies to linear barcodes only.
tf - Text font for SVG output. Default is monospace. Applies to linear barcodes only.
ts - Text size. For SVG output, this is in points and the default is 10. For PNG, GIF, or JPEG output, this is the GD library built-in font number from 1 to 5 and the default is 1. Applies to linear barcodes only.
th - Distance from text baseline to bottom of modules. Default is 10. Applies to linear barcodes only.
ms - Module shape. One of: s for square, r for round, or x for X-shaped. Default is s. Applies to matrix barcodes only.
md - Module density. A number between 0 and 1. Default is 1. Applies to matrix barcodes only.
wq - Width of quiet area units. Default is 1. Use 0 to suppress quiet area.
wm - Width of narrow modules and spaces. Default is 1.
ww - Width of wide modules and spaces. Applies to Code 39, Codabar, and ITF only. Default is 3.
wn - Width of narrow space between characters. Applies to Code 39 and Codabar only. Default is 1.
Related Skills
node-connect
346.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
107.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
346.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
346.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
