lautr/qrcode-bundle

Endroid Qr Code Bundle for Symfony

1.3.12 2014-08-07 05:51 UTC

README

作者 endroid

Latest Stable Version Build Status Latest Stable Version Total Downloads License PayPayl donate button

此插件提供使用 Endroid QR Code (endroid/QrCode) 库生成 QR 码的默认控制器。

knpbundles.com

分支

此分支实现了某些条码功能

要求

安装

使用 Composer 安装此插件。

$ composer require endroid/qrcode-bundle

然后通过内核启用该插件。

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Endroid\Bundle\QrCodeBundle\EndroidQrCodeBundle(),
    );
}

路由

将以下部分添加到您的路由中,以便能够处理 QR 码 URL。如果您仅使用数据 URI 显示图像,则可以跳过此步骤。

EndroidQrCodeBundle:
    resource:   "@EndroidQrCodeBundle/Controller/"
    type:       annotation
    prefix:     /qrcode

配置

可以通过配置覆盖默认 QR 码生成参数。所有参数都是可选的。

config.yml

endroid_qr_code:
    size: 100
    padding: 10
    extension: gif
    error_correction_level: high
    foreground_color: { r: 0, g: 0, b: 0, a: 0 }
    background_color: { r: 255, g: 255, b: 255, a: 0 }
    label: "My label"
    labelFontSize: 16

前景和背景颜色中 Alpha 通道的有效范围是 [0, 127]。

Twig 扩展

QR 码

此插件还提供 Twig 扩展,以便快速生成 QR 码 URL。可选参数包括扩展、大小、填充和错误纠正级别。如果省略参数,则使用插件配置中的值。

<img src="{{ qrcode_url(message) }}" />
<img src="{{ qrcode_url(message, extension='png') }}" />
<img src="{{ qrcode_url(message, size=150) }}" />

您还可以使用数据 URI 辅助程序在 HTML 中嵌入 QR 码,而不是需要单独的 HTTP 请求来加载图像。

<img src="{{ qrcode_data_uri(message, size=200, padding=10) }}" />

条码

<img src="{{ barcode_url(message) }}" />
<img src="{{ barcode_url(message, extension='png') }}" />
<img src="{{ barcode_url(message, size=150) }}" />
<img src="{{ barcode_url(message, type='Code128') }}" />

用法

安装和配置后,可以通过将 QR 码文本附加到 URL 作为挂载点后跟 .png、.jpg 或 .gif 来生成 QR 码。

QR Code

版本控制

应用语义版本控制 (semver)。

许可

此插件受 MIT 许可证的保护。有关完整的版权和许可证信息,请参阅与源代码一起分发的 LICENSE 文件。