HeroQR — это расширенная модульная библиотека PHP, предназначенная для упрощения создания, настройки и управления QR-кодами. Нужен ли вам базовый QR-код или персонализированный код со встроенными логотипами и цветами, HeroQR поможет вам.
Непревзойденная настройка:
Многоформатное кодирование данных: легко кодируйте URL-адреса, текст, электронные письма, визитные карточки и платежную информацию.
Проверка данных: библиотека поддерживает проверку различных типов данных, включая URL-адрес, текст, электронную почту, номер телефона, IP-адрес и Wi-Fi, обеспечивая точность входных данных.
Гибкие возможности экспорта: сохраняйте QR-коды в различных форматах, включая PDF, SVG, PNG, двоичные файлы, GIF, EPS и WebP, обеспечивая совместимость с различными проектами.
Готовность к фреймворку: легко интегрируется с такими фреймворками, как Laravel, что делает его идеальным для современных приложений.
Используйте Composer для установки библиотеки. Также убедитесь, что вы включили и настроили расширение GD, если хотите создавать изображения.
composer require amirezaeb/ HeroQR
Создайте простой QR-код всего за несколько строк кода:
require ' vendor/autoload.php ' ;
use HeroQR Core QRCodeGenerator ;
$ qrCodeManager = new QRCodeGenerator ();
$ qrCode = $ qrCodeManager
# Set the data to be encoded in the QR code
-> setData ( ' https://test.org ' )
# Generate the QR code in PNG format
-> generate ( ' png ' ) ;
# Save the generated QR code to a file named 'qrcode.png'
$ qrCode -> saveTo ( ' qrcode ' );
Полностью настройте внешний вид и функциональность вашего QR-кода, гарантируя при этом проверку данных:
DataType
(необязательно), библиотека автоматически проверяет тип кодируемых данных (URL-адрес, электронная почта, телефон, местоположение, Wi-Fi, текст). use HeroQR DataTypes DataType ;
$ qrCode = $ qrCodeManager
# Set the data to be encoded and validation Email
-> setData ( ' [email protected] ' , DataType::Email)
# Set the background color
-> setBackgroundColor ( ' #000000 ' )
# Set the QR code's color
-> setColor ( ' #b434eb ' )
# Set the size
-> setSize ( 350 )
# Set the logo to be embedded at the center
# Set the logo size default value is 40
-> setLogo ( ' ../assets/HeroExpert.png ' , 30 )
# Set the margin around
-> setMargin ( 10 )
# Set the character encoding
-> setEncoding ( ' UTF-8 ' )
# Set the label
-> setLabel (
# Label Text
label: ' My Email ' ,
# Label align
textAlign: ' center ' ,
# Label text color
textColor: ' #a503fc ' ,
# Label size default value is 20
fontSize: 15 ,
# Label margin default value is (0, 10, 10, 10)
margin: [ 15 , 15 , 15 , 15 ]
)
# Generate the QR code in WebP format
-> generate ( ' webp ' );
# Save the generated QR code to a file
$ qrCode -> saveTo ( ' custom-qrcode ' );
С помощью этих опций вы можете создавать визуально привлекательные QR-коды, соответствующие вашим потребностям в дизайне.
HeroQR поддерживает расширенные параметры вывода для большей гибкости при создании QR-кодов:
Выход матрицы : представляет QR-код в виде матрицы (2D-массива) битов, где каждый блок матрицы соответствует определенной части закодированных данных. Вы можете получить матрицу в двух формах:
Matrix
.Кодировка Base64 : сгенерируйте QR-код в виде строки в кодировке Base64, которая идеально подходит для встраивания непосредственно в HTML, электронные письма или другие носители.
URI данных : получите QR-код в виде URI данных, который представляет собой компактное строковое представление изображения, которое можно внедрить непосредственно в HTML.
Сохранение в различных форматах . Вы можете сохранить QR-код в различных форматах, таких как PNG, SVG, GIF, WebP, EPS, PDF, двоичный и других. Формат определяется автоматически в зависимости от желаемого типа вывода.
# Get the QR code as a string representation
$ string = $ qrCode -> getString ();
# Get the QR code as a matrix object
$ matrix = $ qrCode -> getMatrix ();
# Get the matrix as a 2D array
$ matrixArray = $ qrCode -> getMatrixAsArray ();
# Get the QR code as Base64 encoding for embedding in HTML
$ dataUri = $ qrCode -> getDataUri ();
# Save the QR code to a file in the desired format (WebP, GIF, Binary, Esp, PNG, SVG, PDF)
$ qrCode -> saveTo ( ' qr_code_output ' );
Модульная структура HeroQR обеспечивает простоту использования и масштабируемость:
Мы приветствуем ваш вклад! Вот как вы можете принять участие:
git checkout -b feature-name
.git commit -m 'Add feature-name'
.git push origin feature-name
.HeroQR выпускается под лицензией MIT, что дает вам свободу использовать, изменять и распространять его.
Есть вопросы или предложения? Давайте подключим:
Преобразуйте свои проекты с помощью HeroQR уже сегодня!