Laravel条形码生成用哪个库

wen PHP项目 5

本文目录导读:

Laravel条形码生成用哪个库

  1. Milon Barcode(最推荐)
  2. SimpleSoftwareIO\QrCode(二维码 + 条形码)
  3. Picqer/php-barcode-generator
  4. Barcode Buddy(Laravel 包)
  5. 推荐选择
  6. 完整示例(Milon Barcode)

在 Laravel 中,条形码生成推荐使用以下库:

Milon Barcode(最推荐)

最流行的 Laravel 条形码库,支持多种格式。

安装:

composer require milon/barcode

使用示例:

use Milon\Barcode\DNS1D;
// 生成 Code128 条形码
$barcode = new DNS1D();
$barcode->getBarcodeHTML('123456789', 'C128');
// 生成图片
$barcode->getBarcodePNG('123456789', 'C128');
// 生成 SVG
$barcode->getBarcodeSVG('123456789', 'C128');
// 在 Blade 模板中使用
<img src="data:image/png;base64,{{ DNS1D::getBarcodePNG('123456789', 'C128') }}" alt="barcode">

支持的格式: C39, C39+, C39E, C39E+, C93, S25, S25+, I25, I25+, C128, C128A, C128B, C128C, 等

SimpleSoftwareIO\QrCode(二维码 + 条形码)

同时支持二维码和条形码。

安装:

composer require simplesoftwareio/simple-qrcode

使用示例:

use SimpleSoftwareIO\QrCode\Facades\QrCode;
// 生成条形码
QrCode::format('png')->generate('123456789');
// 保存到文件
QrCode::format('png')->generate('123456789', public_path('barcodes/barcode.png'));

Picqer/php-barcode-generator

PHP 原生的条形码生成库。

安装:

composer require picqer/php-barcode-generator

使用示例:

use Picqer\Barcode\BarcodeGeneratorPNG;
use Picqer\Barcode\BarcodeGeneratorHTML;
$generator = new BarcodeGeneratorPNG();
echo '<img src="data:image/png;base64,' . base64_encode($generator->getBarcode('123456789', $generator::TYPE_CODE_128)) . '">';
// 或生成 HTML 格式
$generator = new BarcodeGeneratorHTML();
echo $generator->getBarcode('123456789', $generator::TYPE_CODE_128);

Barcode Buddy(Laravel 包)

专门为 Laravel 封装的条形码包。

安装:

composer require lexing/barcode-buddy

推荐选择

  • Milon Barcode - 如果你只需要条形码,功能最全
  • SimpleSoftwareIO\QrCode - 如果你同时需要二维码和条形码
  • Picqer/php-barcode-generator - 如果你想要更轻量级的方案

完整示例(Milon Barcode)

在 Controller 中:

<?php
namespace App\Http\Controllers;
use Milon\Barcode\DNS1D;
class BarcodeController extends Controller
{
    public function generate($code)
    {
        $barcode = new DNS1D();
        $barcode->setStorPath(storage_path('app/public/barcodes/'));
        // 生成图片并保存
        $barcode->getBarcodePNGPath($code, 'C128', 2, 30);
        // 返回图片
        return response($barcode->getBarcodePNG($code, 'C128'))
            ->header('Content-Type', 'image/png');
    }
}

在 Blade 模板中:

<!-- 直接显示条形码 -->
<img src="data:image/png;base64,{{ DNS1D::getBarcodePNG('123456789', 'C128') }}" 
     alt="barcode" 
     style="width: {{ $width }}px; height: {{ $height }}px;">

最推荐使用 Milon Barcode,因为它最稳定、功能最全面,且专门为 Laravel 优化。

抱歉,评论功能暂时关闭!