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设计模式中的工厂模式
Jun 12 PHP
php 各种应用乱码问题的解决方法
May 09 PHP
PHP中的float类型使用说明
Jul 27 PHP
PHP函数篇之掌握ord()与chr()函数应用
Dec 05 PHP
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
Oct 03 PHP
php新浪微博登录接口用法实例
Dec 23 PHP
PHP弱类型语言中类型判断操作实例详解
Aug 10 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
Dec 25 PHP
PHP使用标准库spl实现的观察者模式示例
Aug 04 PHP
laravel中的fillable和guarded属性详解
Oct 23 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
Zerg基本策略
2020/03/14 星际争霸
常见的PHP五种设计模式小结
2011/03/23 PHP
PHP 利用Mail_MimeDecode类提取邮件信息示例
2014/01/26 PHP
destoon安装出现Internal Server Error的解决方法
2014/06/21 PHP
php字符串截取函数用法分析
2014/11/25 PHP
php操作mongoDB实例分析
2014/12/29 PHP
PHP实现获取客户端IP并获取IP信息
2015/03/17 PHP
PHP的AES加密算法完整实例
2016/07/20 PHP
PHP htmlspecialchars() 函数实例代码及用法大全
2018/09/18 PHP
js中使用DOM复制(克隆)指定节点名数据到新的XML文件中的代码
2011/07/27 Javascript
flash遮住div问题的正确解决方法
2014/02/27 Javascript
JavaScript获取XML数据附示例截图
2014/03/05 Javascript
JS删除字符串中重复字符方法
2014/03/09 Javascript
jQuery实现连续动画效果实例分析
2015/10/09 Javascript
Jquery树插件zTree实现菜单树
2017/01/24 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
2017/12/07 Javascript
React 组件间的通信示例
2018/06/14 Javascript
Nodejs异步回调之异常处理实例分析
2018/06/22 NodeJs
解决eclipse中没有js代码提示的问题
2018/10/10 Javascript
vue 表单验证按钮事件交由父组件触发的方法
2018/12/17 Javascript
Vue之Mixins(混入)的使用方法
2019/09/24 Javascript
[01:05:24]Ti4 冒泡赛第二天 iG vs NEWBEE 3
2014/07/15 DOTA
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
python中sys.argv参数用法实例分析
2015/05/20 Python
python+opencv轮廓检测代码解析
2018/01/05 Python
Python扩展内置类型详解
2018/03/26 Python
Python3爬虫之urllib携带cookie爬取网页的方法
2018/12/28 Python
Python爬虫模拟登陆哔哩哔哩(bilibili)并突破点选验证码功能
2020/12/21 Python
HelloFresh澳大利亚:订购你的美味食品盒、健康餐食
2018/03/28 全球购物
JAKO-O德国野酷台湾站:德国首屈一指的婴幼童用品品牌
2019/01/14 全球购物
英国在线照明超市:Castlegate Lights
2019/10/30 全球购物
幼儿园新学期寄语
2014/01/18 职场文书
2014年学生会个人工作总结
2014/11/07 职场文书
党性教育心得体会(共6篇)
2016/01/21 职场文书
MySQL主从复制断开的常用修复方法
2021/04/07 MySQL
Pytorch实现图像识别之数字识别(附详细注释)
2021/05/11 Python