php生成不同的条形码的方法:1、通过“composer require codeitnowin/barcode”语句安装所需的代码库;2、将数据流文件写入创建的文件内容中;3、输出图片文件即可。
本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。
php 怎么生成不同的条形码 ?
php 生成条形码:
条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。
立即学习“PHP免费学习笔记(深入)”;
这里采用php实现,支持大多数的码制。
条码长度
Code128,Code39 Extended, Code93 Extended 支持全全ASCII码。
Code128有A、B、C三种字符集,每种字符集支持一部分,大致是这样的,
A字符集支持支持AZ 26个大写字母、09 9个数字及一些特殊字符;
B字符集支持支持AZ 26个大小写字母、09 9个数字及一些特殊字符;
C字符集支持纯数字字符,支持0`9 9个数字,而且是偶数,如果是奇数,生成条码时自动在前面加0;最大长度纯字符为32位,纯字符加特殊符号炎44位。EAN/UCC 128 同 Code 128.
CODE128码是广泛应用在企业内部管理、生产流程、物流控制系统方面的条码码制,由于其优良的特性在管理信息系统的设计中被广泛使用,CODE128码是应用最广泛的条码码制之一。
CODE128码是1981年引入的一种高密度条码,CODE128 码可表示从 ASCII 0 到ASCII 127 共128个字符,故称128码。其中包含了数字、字母和符号字符。
Code 128码与Code 39码有很多的相近性,都广泛运用在企业内部管理、生产流程、物流控制系统方面。不同的在于Code 128比Code 39能表现更多的字符,单位长度里的编码密度更高。当单位长度里不能容下Code 39编码或编码字符超出了Code 39的限制时,就可选择Code 128来编码。
Code39,Code93支持的范围为09数字字符及AZ 大写字母和‘/’,‘+’,‘%’,‘$’,‘-’,‘.’及空格,长度理论上没有限制。
Code39 Extended, Code93 Extended 不支持‘-’,‘.’,其它和39 93一样。
EAN8,EAN13,EAN Ext,UPC A,UPC E,UPC Ext支持的范围为0`9数字字符,EAN8长度为8,EAN13长度为13,EAN8 Ext长度为10或者13,EAN13 Ext长度为15或者18,UPCA长度为12,UPCE长度为8,UPCE Ext长度为10或者13,UPCA Ext长度为14或者17。
Bookland,ISSN,ISSN可能支持数字以外的其它字符,本中间件支持请参考“关于Bookland(ISBN)和ISSN”部分的说明。
Code11 支持的范围为0`9数字字符及‘-’,长度理论上没有限制。
Codabar支持的范围为0`9数字字符及‘A’,‘B’,‘C’,‘D’,‘-’,‘.’,‘/’,‘:’,‘+’,‘$’,开始和结尾字符必须是‘A’,‘B’,‘C’,‘D’中的字符,长度理论上没有限制。
MSI,Code 2of5 支持的范围为0`9数字字符,长度理论上没有限制。
PostNet支持的范围为0`9数字字符,长度为5位,9位,或者11位,本开发包支持带有非数字的格式,如12345-8012,使用更方便。
Matrix 25 (矩阵25码) 支持的范围为0`9数字字符,长度为13位。
安装所需的代码库
composer require codeitnowin/barcode
登录后复制
百度云地址:https://pan.baidu.com/s/1-hFWYfed4y3YkWKLz2o75g
相关代码(具体展示在后面)
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use CodeItNowBarcodeBundleUtilsBarcodeGenerator;use CodeItNowBarcodeBundleUtilsQrCode; class BarCodeController extends Controller{ public function index() { echo 'Example - QrCode'; $qrCode = new QrCode(); $qrCode ->setText('https://www.php.net/manual/zh/') ->setSize(300) ->setPadding(10) ->setErrorCorrection('high') ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0)) ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0)) ->setLabel('https://www.php.net/') ->setLabelFontSize(16) ->setImageType(QrCode::IMAGE_TYPE_PNG); echo '
getContentType() . ';base64,' . $qrCode->generate() . '" />'; echo '
'; echo 'Example - Code128
'; $barcode = new BarcodeGenerator(); $barcode->setText("0123456789"); $barcode->setType(BarcodeGenerator::Code128); $barcode->setScale(2); $barcode->setThickness(25); $barcode->setFontSize(10); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Code11
'; $barcode = new BarcodeGenerator(); $barcode->setText("0123456789"); $barcode->setType(BarcodeGenerator::Code11); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Code39
'; $barcode = new BarcodeGenerator(); $barcode->setText("0123456789"); $barcode->setType(BarcodeGenerator::Code39); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Code39Extended
'; $barcode = new BarcodeGenerator(); $barcode->setText("0123456789"); $barcode->setType(BarcodeGenerator::Code39Extended); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Ean128
'; $barcode = new BarcodeGenerator(); $barcode->setText("00123456789012345675"); $barcode->setType(BarcodeGenerator::Ean128); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Gs1128
'; $barcode = new BarcodeGenerator(); $barcode->setText("00123456789012345675"); $barcode->setType(BarcodeGenerator::Gs1128); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Gs1128
'; $barcode = new BarcodeGenerator(); $barcode->setText("4157707266014651802001012603068039000000006377069620171215"); $barcode->setType(BarcodeGenerator::Gs1128); $barcode->setNoLengthLimit(true); $barcode->setAllowsUnknownIdentifier(true); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - I25
'; $barcode = new BarcodeGenerator(); $barcode->setText("00123456789012345675"); $barcode->setType(BarcodeGenerator::I25); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Isbn
'; $barcode = new BarcodeGenerator(); $barcode->setText("0012345678901"); $barcode->setType(BarcodeGenerator::Isbn); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Msi
'; $barcode = new BarcodeGenerator(); $barcode->setText("0012345678901"); $barcode->setType(BarcodeGenerator::Msi); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Postnet
'; $barcode = new BarcodeGenerator(); $barcode->setText("01234567890"); $barcode->setType(BarcodeGenerator::Postnet); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - S25
'; $barcode = new BarcodeGenerator(); $barcode->setText("012345678901"); $barcode->setType(BarcodeGenerator::S25); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Upca
'; $barcode = new BarcodeGenerator(); $barcode->setText("012345678901"); $barcode->setType(BarcodeGenerator::Upca); $code = $barcode->generate(); echo ''; echo '
'; echo 'Example - Upce
'; $barcode = new BarcodeGenerator(); $barcode->setText("012345"); $barcode->setType(BarcodeGenerator::Upce); $code = $barcode->generate(); echo ''; }}
登录后复制
base64格式的图片数据如何转成图片
// $base_img是获取到前端传递的值 $base_img = str_replace('data:image/jpg;base64,', '', $code);// 设置文件路径和命名文件名称 $path = "D:/Uploads/Bar/2019-12-11/"; $output_file = time().rand(100,999).'.jpg'; $path = $path.$output_file;// 创建将数据流文件写入我们创建的文件内容中 file_put_contents($path, base64_decode($base_img));// 输出文件 print_r($output_file);Buy me a cup of coffee :)
登录后复制
推荐学习:《PHP视频教程》
以上就是php 怎么生成不同的条形码的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2076711.html