HeroQR是一个先进的模块化 PHP 库,旨在简化 QR 码的创建、定制和管理。无论您需要基本的 QR 码还是带有嵌入徽标和颜色的高度定制的 QR 码, HeroQR都能满足您的需求。
无与伦比的定制:
多格式数据编码:轻松对 URL、文本、电子邮件、名片和付款信息进行编码。
数据验证:该库支持各种数据类型的验证,包括URL、文本、电子邮件、电话号码、IP和Wi-Fi,确保输入数据的准确性。
灵活的导出选项:以多种格式保存 QR 码,包括 PDF、SVG、PNG、Binary、GIF、EPS 和 WebP,确保与不同项目的兼容性。
框架就绪:与 Laravel 等框架无缝集成,使其非常适合现代应用程序。
使用 Composer 安装库。如果要生成图像,还要确保已启用并配置 GD 扩展。
composer require amirezaeb/ HeroQR
只需几行代码即可生成一个简单的二维码:
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、电子邮件、电话、位置、Wifi、文本)。 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 码表示为位矩阵(二维数组),其中矩阵的每个块对应于编码数据的特定部分。您可以通过两种形式检索矩阵:
Matrix
对象。Base64 编码:将 QR 码生成为 Base64 编码字符串,非常适合直接嵌入 HTML、电子邮件或其他媒体中。
Data URI :获取 QR 码作为 Data 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改变您的项目!