请问如何在thinkphp5开发条形码功能
Jennifer
Jennifer 2018-04-12 13:09:43
0
0
1138

我想实现一个在系统里可以生成条形码及用条码扫描器扫条码实现进库和出库的功能。我用的是thinkphp5来开发的。找了很多资料,做了以下的几步。1.把条形码的类文件夹barcode拷贝到extend目录下。2. 在入口文件里加了这一句define('EXTEND_PATH','../extend/'); 3.在common里自建的base.php的文件里,加了一个方法

namespace app\admin\common;


use think\Controller;

use think\Request;

use Util\data\Sysdb;

use think\Session;


class Base extends Controller

{

public function barcode_create(){

$content='123';

// 引用barcode文件夹对应的类

Loader::import('BCode.BCGFontFile',EXTEND_PATH);

//Loader::import('BCode.BCGColor',EXTEND_PATH);

Loader::import('BCode.BCGDrawing',EXTEND_PATH);

// 条形码的编码格式

Loader::import('BCode.BCGcode39',EXTEND_PATH,'.barcode.php');

// $code = '';

// 加载字体大小

//$font = new BCGFontFile('./class/font/Arial.ttf', 18);

//颜色条形码

$color_black = new \BCGColor(0, 0, 0);

$color_white = new \BCGColor(255, 255, 255);

$drawException = null;

try

{

$code = new \BCGcode39();

$code->setScale(2);

$code->setThickness(30); // 条形码的厚度

$code->setForegroundColor($color_black); // 条形码颜色

$code->setBackgroundColor($color_white); // 空白间隙颜色

// $code->setFont($font); //

$code->parse($content); // 条形码需要的数据内容

}

catch(\Exception $exception)

{

$drawException = $exception;

}

//根据以上条件绘制条形码

$drawing = new \BCGDrawing('', $color_white);

if($drawException) {

$drawing->drawException($drawException);

}else{

$drawing->setBarcode($code);

$drawing->draw();

}

// 生成PNG格式的图片

header('Content-Type: image/png');

// header('Content-Disposition:attachment; filename="barcode.png"'); //自动下载

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

}

请问我写对了吗?接下来该怎么做呢?


Jennifer
Jennifer

全部回复 (0)
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!