Download the PHP package cruide/qrcode-native-php without Composer
On this page you can find all versions of the php package cruide/qrcode-native-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Please rate this library. Is it a good library?
Informations about the package qrcode-native-php
cruide/qrcode-native-php
Alexander Tischenko — http://alex-tisch.ru
Генерация QR-кодов на чистом PHP — без сторонних сервисов и без зависимостей.
Основной сценарий — маркировка товаров и складских единиц: название, артикул, UUID, дата прихода, комментарий. Подходит для печати этикеток (SVG — векторный, даёт чёткий отпечаток при любом размере).
Возможности
- Полная реализация ISO/IEC 18004: версии 1–40, уровни коррекции L/M/Q/H
- Байтовый режим кодирования — UTF-8 (кириллица) работает «из коробки»
- Reed–Solomon, интерливинг блоков, автовыбор версии и лучшей маски
- Рендер: SVG (всегда), PNG (нужен ext-gd), текст/терминал, data-URI
- Ноль зависимостей, PHP >= 8.0
- Только кодирование (декодирования нет)
Установка
Быстрый старт
Этикетка товара
Содержимое QR (формат по умолчанию — строки KEY:значение):
Форматы полезной нагрузки
Настройки генерации
| Уровень | Восстановление | Когда использовать |
|---|---|---|
| L | ~7% | максимум данных, чистые условия |
| M | ~15% | по умолчанию |
| Q | ~25% | транспортировка |
| H | ~30% | царапающиеся/грязные этикетки |
Ёмкость (байты, версия 40): L — 2953, M — 2331, Q — 1663, H — 1273.
API
| Метод | Описание |
|---|---|
QrCode::make($payload) |
создать генератор (строка или ProductLabel) |
setEcLevel(string) |
уровень коррекции L/M/Q/H |
setMinVersion(?int) |
минимальная версия 1–40 |
setMask(?int) |
маска 0–7 |
toSvg($moduleSize=8, $quietZone=4, $fg, $bg) |
SVG-строка |
toPng($width=512, $quietZone=4) |
бинарный PNG (GD) |
toText($quietZone=2, $invert=false) |
Unicode-превью |
toDataUri() |
SVG в виде data-URI |
saveSvg($path, ...), savePng($path, ...) |
запись в файл |
getMatrix(), getSize(), getVersion(), getMask() |
интроспекция |
Проверка
Как это работает
- Данные кодируются в байтовом режиме (индикатор
0100, длина, байты UTF-8, терминатор, пад-байты0xEC/0x11). - Подбирается минимальная версия, поток разбивается на RS-блоки, для каждого считаются коды коррекции (GF(256), полином 0x11D), блоки интерливируются.
- Строится матрица: поисковые паттерны, тайминг, выравнивание, служебная информация (формат/версия, BCH), данные размещаются зигзагом.
- Примеряются 8 масок, выбирается минимальный штраф по четырём правилам.
Лицензия
MIT
All versions of qrcode-native-php with dependencies
PHP Build Version
Package Version
Requires
php Version
>=8.0
The package cruide/qrcode-native-php contains the following files
Loading the files please wait ...