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 相关文章推荐
复杂检索数据并分页显示的处理方法
Oct 09 PHP
说明的比较细的php 正则学习实例
Jul 30 PHP
php中实现记住密码自动登录的代码
Mar 02 PHP
fgetcvs在linux的问题
Jan 15 PHP
php的mkdir()函数创建文件夹比较安全的权限设置方法
Jul 28 PHP
php常用的url处理函数总结
Nov 19 PHP
详解PHP中的Traits
Jul 29 PHP
php获取远程文件大小
Oct 20 PHP
Yii基于数组和对象的Model查询技巧实例详解
Dec 28 PHP
Yii使用migrate命令执行sql语句的方法
Mar 15 PHP
Yii2框架中使用PHPExcel导出Excel文件的示例
Aug 09 PHP
基于Laravel5.4实现多字段登录功能方法示例
Aug 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
PHP防盗链代码实例
2014/08/27 PHP
php关键字仅替换一次的实现函数
2015/10/29 PHP
PHP自定义函数格式化json数据示例
2016/09/14 PHP
php解决DOM乱码的方法示例代码
2016/11/20 PHP
19个很有用的 JavaScript库推荐
2011/06/27 Javascript
JS小游戏之象棋暗棋源码详解
2014/09/25 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
2015/03/03 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
javascript中JSON.parse()与eval()解析json的区别
2016/05/19 Javascript
JavaScript_object基础入门(必看篇)
2016/06/13 Javascript
漫谈JS引擎的运行机制 你应该知道什么
2016/06/15 Javascript
JavaScript制作颜色反转小游戏
2016/09/25 Javascript
浅谈NodeJs之数据库异常处理
2017/10/25 NodeJs
vue2.0 常用的 UI 库实例讲解
2017/12/12 Javascript
React props和state属性的具体使用方法
2018/04/12 Javascript
原生JS实现动态加载js文件并在加载成功后执行回调函数的方法
2020/12/30 Javascript
ES6知识点整理之数组解构和字符串解构的应用示例
2019/04/17 Javascript
微信小程序实现带参数的分享功能(两种方法)
2019/05/17 Javascript
js实现踩五彩块游戏
2020/02/08 Javascript
python实现识别相似图片小结
2016/02/22 Python
python编写弹球游戏的实现代码
2018/03/12 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
python实现定时压缩指定文件夹发送邮件
2020/12/22 Python
python实现点击按钮修改数据的方法
2019/07/17 Python
关于pandas的离散化,面元划分详解
2019/11/22 Python
opencv3/C++实现视频读取、视频写入
2019/12/11 Python
PyCharm GUI界面开发和exe文件生成的实现
2020/03/04 Python
构建高效的python requests长连接池详解
2020/05/02 Python
PyInstaller运行原理及常用操作详解
2020/06/13 Python
后勤副校长自我鉴定
2013/10/13 职场文书
学习教师法的心得体会
2014/09/03 职场文书
幼儿园推普周活动总结
2015/05/07 职场文书
丧事酒宴答谢词
2015/09/30 职场文书
Html5调用企业微信的实现
2021/04/16 HTML / CSS
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python
navicat 连接Ubuntu虚拟机的mysql的操作方法
2022/04/02 MySQL