首页 » PHP » PHP生成条形码

PHP生成条形码

barcodephp库

barcodephp库是个流行的PHP条形码生成库,这里是一份官方的入门手册。下面是这个库的简单使用代码:

/* 引入库文件  */
require_once("barcode/class/BCGFontFile.php");
require_once("barcode/class/BCGColor.php");
require_once("barcode/class/BCGDrawing.php"); 

/* 根据不同的编码方法,引入相应的库文件 */
require_once("barcode/class/BCGcode39.barcode.php");

/* 颜色和字体 */
$colorFront = new BCGColor(0,0,0);
$colorBack = new BCGColor(255,255,255);
    
$font = new BCGFontFile("libs/barcode/font/Arial.ttf", 12);
            
/* 编码对象 */
$code = new BCGcode39();
$code->setScale(2);
$code->setThickness(40);
$code->setForegroundColor($colorFront);
$code->setBackgroundColor($colorBack);
$code->setFont($font);
$code->parse($text);

/* 绘制对象 */
$drawing = new BCGDrawing("", $colorFront);
$drawing->setBarCode($code);
$drawing->draw();

/* 作为文件下载 */
header("Content-Type: image/png;");
header("Content-Disposition:attachment;filename='barcode.png'");

$drawing->finish(BCGDrawing::IMG_FORMAT_PNG);

生成条形码后,有几种处理方式:作为文件下载,保存文件,显示在当前页面。

1. 作为文件下载。即上面代码所示。

2. 作为文件保存。需要修改几行代码:

/* 绘制对象。生成文件名,构造时填入文件名,表示保存文件。 */
$drawing = new BCGDrawing("barcode.png", $colorFront);
$drawing->setBarCode($code);
$drawing->draw();

/* 不要输出到浏览器,注释下面两行 */
//header("Content-Type: image/png;");
//header("Content-Disposition:attachment;filename='barcode.png'");

$drawing->finish(BCGDrawing::IMG_FORMAT_PNG);

3. 直接显示在页面:

/* 绘制对象。不用填用户名。 */
$drawing = new BCGDrawing("", $colorFront);
$drawing->setBarCode($code);
$drawing->draw();

/* 输出到浏览器,直接显示 - 把attachment修改为inline */
header("Content-Type: image/png;");
header("Content-Disposition:inline;filename='barcode.png'");

$drawing->finish(BCGDrawing::IMG_FORMAT_PNG);

生成的条形码,可以在线验证,是否正确。

分享

0