php生成条形码的图片的实例详解


Posted in PHP onSeptember 13, 2017

php生成条形码的图片的实例详解

因为用户的需要  写了一个条形码;用php生成一个条形码的图片  这个大家应该比我要好很多的吧,在自己项目的根目录下建立一个测试文件(直接把下面的代码放进去运行一下看看,我也是抄袭别人的),在实际的项目中你可以将下面的代码封装到一个公共类文件下的一个函数,然后调用。

class testinfo{
  function UPCAbarcode($code) {
    $trans_code = $code;
    $lw = 2.2; $hi = 40;
    $Lencode = array('0001101','0011001','0010011','0111101','0100011',
        '0110001','0101111','0111011','0110111','0001011');
    $Rencode = array('1110010','1100110','1101100','1000010','1011100',
        '1001110','1010000','1000100','1001000','1110100');
    $ends = '101'; $center = '01010';
    /* Compute the EAN-13 Checksum digit */
    $ncode = '0'.$code;
    $even = 0; $odd = 0;
    for ($x=0;$x<12;$x++) {
      if ($x % 2) {
        $odd += $ncode[$x];
      } else { $even += $ncode[$x];
      }
    }
    $code.=(10 - (($odd * 3 + $even) % 10)) % 10;
    /* Create the bar encoding using a binary string */
    $bars=$ends;
    $bars.=$Lencode[$code[0]];
    
    for($x=1;$x<6;$x++) {
      $bars.=$Lencode[$code[$x]];
    }
    $bars.=$center;
    for($x=6;$x<12;$x++) {
      $bars.=$Rencode[$code[$x]];
    }
    $bars.=$ends;
    /* Generate the Barcode Image */
    $img = ImageCreate($lw*75+30,$hi-3);  // 95
    $fg = ImageColorAllocate($img, 0, 0, 0);
    $bg = ImageColorAllocate($img, 255, 255, 255);
    ImageFilledRectangle($img, 0, 0, $lw*75+30, $hi+30, $bg);
    $shift=10;
    for ($x=0;$x<strlen($bars);$x++) {
      if (($x<0) || ($x>=45 && $x<46) || ($x >=85)) {
        $sh=10;
      } else { $sh=0;
      }
      if ($bars[$x] == '1') {
        $color = $fg;
      } else { $color = $bg;
      }
      ImageFilledRectangle($img, ($x*$lw)+15,5,($x+1)*$lw+14,$hi+5+$sh,$color);
    }
    /* Add the Human Readable Label */
    ImageString($img,4,5,$hi-5,$code[0],$fg);
    for ($x=0;$x<5;$x++) {
      ImageString($img,5,$lw*(13+$x*6)+15,$hi+5,$code[$x+1],$fg);
      ImageString($img,5,$lw*(53+$x*6)+15,$hi+5,$code[$x+6],$fg);
    }
    ImageString($img,4,$lw*95-7,$hi,$code[11],$fg);
    /* Output the Header and Content. */
    header("Content-Type: image/png");
    ImagePNG($img);
  }
//}
echo UPCAbarcode('201212070099');

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
5.PHP的其他功能
Oct 09 PHP
一个php作的文本留言本的例子(六)
Oct 09 PHP
深入了解php4(1)--回到未来
Oct 09 PHP
php中call_user_func函数使用注意事项
Nov 21 PHP
php微信公众平台开发之获取用户基本信息
Aug 17 PHP
PHP统计目录中文件以及目录中目录大小的方法
Jan 09 PHP
PHP模板引擎Smarty内置变量调解器用法详解
Apr 11 PHP
抛弃 PHP 代价太高
Apr 26 PHP
PHP用户注册邮件激活账户的实现代码
May 31 PHP
PHP PDOStatement::fetchAll讲解
Jan 31 PHP
提高Laravel应用性能方法详解
Jun 24 PHP
解决在Laravel 中处理OPTIONS请求的问题
Oct 11 PHP
php之可变函数的实例详解
Sep 13 #PHP
PHP实现一个多功能购物网站的案例
Sep 13 #PHP
php之可变变量的实例详解
Sep 12 #PHP
PHP清除缓存的几种方法总结
Sep 12 #PHP
PHP 传输会话curl函数的实例详解
Sep 12 #PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 #PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 #PHP
You might like
ASP和PHP都是可以删除自身的
2007/04/09 PHP
PHP进程通信基础之信号量与共享内存通信
2017/02/19 PHP
laravel实现简单用户权限的示例代码
2019/05/28 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
论坛特效代码收集(落伍转发-不错)
2006/12/02 Javascript
JS获取dom 对象 ajax操作 读写cookie函数
2009/11/18 Javascript
JS getMonth()日期函数的值域是0-11
2010/02/15 Javascript
Jquery升级新版本后选择器的语法问题
2010/06/02 Javascript
JavaScript入门之对象与JSON详解
2011/10/21 Javascript
jQuery UI 实现email输入提示实例
2013/08/15 Javascript
JQuery显示隐藏DIV的方法及代码实例
2015/04/16 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
2015/11/03 Javascript
基于angular实现模拟微信小程序swiper组件
2017/06/11 Javascript
jQuery替换节点元素的操作方法
2018/03/18 jQuery
JS基于开关思想实现的数组去重功能【案例】
2019/02/18 Javascript
解决vue跨域axios异步通信问题
2019/04/17 Javascript
微信小程序 this.triggerEvent()的具体使用
2019/12/10 Javascript
python抓取网页中图片并保存到本地
2015/12/01 Python
详解使用python crontab设置linux定时任务
2016/12/08 Python
Django 如何获取前端发送的头文件详解(推荐)
2017/08/15 Python
python生成ppt的方法
2018/06/07 Python
python日志logging模块使用方法分析
2019/05/23 Python
Python操作远程服务器 paramiko模块详细介绍
2019/08/07 Python
Python代码实现http/https代理服务器的脚本
2019/08/12 Python
python tkinter组件使用详解
2019/09/16 Python
泰国Robinson百货官网:购买知名品牌的商品
2020/02/08 全球购物
日语专业推荐信
2013/11/12 职场文书
《金孔雀轻轻跳》教学反思
2014/04/20 职场文书
原料仓仓管员岗位职责
2014/07/08 职场文书
招商引资工作汇报材料
2014/10/28 职场文书
2014年数学教研组工作总结
2014/12/06 职场文书
个人创业事迹材料
2014/12/30 职场文书
2019年教师节祝福语精选,给老师送上真诚的祝福
2019/09/09 职场文书
JavaScript数组reduce()方法的语法与实例解析
2021/07/07 Javascript
使用logback实现按自己的需求打印日志到自定义的文件里
2021/08/30 Java/Android
Jmerte 分布式压测及分布式压测配置
2022/04/30 Java/Android