thinkphp5 生成条形码整合

下面的例子中的类文件是从官网下载下来的 相信通过下面的步骤实现了条形码生成并显示在页面上 之后,大家都会问到一个问题 生成条形码图片怎么保存到自己指定的目录中呢 本人查找了很久才找到了 相关资料 http://www.shayanderson.com/php/php-barcode-generator-class-code-39.htm

其中的 $content 是设置 条形码的内容信息 这里是测试 指定固定值

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);
    }

页面上代码很简单如图 直接提交到 你的方法 就可以出现条形码了
这里写图片描述

成功截图
这里写图片描述

附上条形码类文件 本人是放在 tp5 的extend目录下
https://yunpan.cn/OcBUixKszr3AGe (提取码:c7aa)

你可能感兴趣的:(thinkphp5 生成条形码整合)