您当前的位置: 首页 > 网站编程 > PHP教程 > 利用google api生成二维码名片

利用google api生成二维码名片

作者:不详 来源:网络 发布时间: 2014-08-05 09:11 点击:
二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码。堆叠式/行排式二维条码形态上是由多行短截的一维条码堆叠而成;矩阵式二维条码以矩阵的形式组成,在矩阵相应元素位置上用点表示二进制1,用空表示二进制0,点和空的排列组成代码。 堆叠式/行排式二维条

利用google api生成二维码名片

  二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码。堆叠式/行排式二维条码形态上是由多行短截的一维条码堆叠而成;矩阵式二维条码以矩阵的形式组成,在矩阵相应元素位置上用“点”表示二进制“1”,用“空”表示二进制“0”,“点”和“空”的排列组成代码。

  堆叠式/行排式二维条码,如,Code 16K、Code 49、PDF417等。

  矩阵式二维码,最流行莫过于QR CODE。

  矩阵式二维码存储的数据量更大;可以包含数字、字符,及中文文本等混合内容;有一定的容错性(在部分损坏以后可以正常读取);空间利用率高等。

  

  

  

  

  

  

  

  

  

  

  
代码如下


  <?php

  $vname = 'test'; 

  $vtel = '13800000000'; 

  generateQRfromGoogle($vname,$vtel);

  function generateQRfromGoogle($vname,$vtel,$widhtHeight ='150',$EC_level='L',$margin='0')

  {

     if($vname&&$vtel){ 

        $chl = "BEGIN:VCARDnVERSION:3.0". //vcard头信息 

        "nFN:$vname". 

        "nTEL:$vtel". 

        "nEND:VCARD"; //vcard尾信息 

        echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.urlencode($chl).'" alt="QR code" widhtHeight="'.$size.'" widhtHeight="'.$size.'"/>';

     }

  }

  ?>

  


  php生成网址二维码:

  

  

  

  

  

  

  

  

  

  

  
代码如下


  <?php

  $url = "http://www.google.com.hk";

  generateQRfromGoogle($url);

  function generateQRfromGoogle($chl,$widhtHeight ='150',$EC_level='L',$margin='0')

  {

        echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.urlencode($chl).'" alt="QR code" widhtHeight="'.$size.'" widhtHeight="'.$size.'"/>';

  }

  ?>

  


  例子

  

  

  

  

  

  

  

  

  

  

  
代码如下
<?php

  /*

  * php 生成二维码名片

  * api Google

  * google api 二维码生成【QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式】

  * @param string $chl 二维码包含的信息,可以是数字、字符、二进制信息、汉字。不能混合数据类型,数据必须经过UTF-8 URL-encoded.如果需要传递的信息超过2K个字节,请使用POST方式

  * @param int $widhtHeight 生成二维码的尺寸设置

  * @param string $EC_level 可选纠错级别,QR码支持四个等级纠错,用来恢复丢失的、读错的、模糊的、数据。

  *                        L-默认:可以识别已损失的7%的数据

  *                        M-可以识别已损失15%的数据

  *                        Q-可以识别已损失25%的数据

  *                        H-可以识别已损失30%的数据

  * @param int $margin 生成的二维码离图片边框的距离

  * 二维码名片的格式---vcard

  * 格式参考如下:

  BEGIN:VCARD

  VERSION:3.0

  FN:用户名

  TEL;CELL;VOICE:0571-00000000

  TEL;WORK;VOICE:0571-00000000

  TEL;WORK;FAX:0571-00000000

  EMAIL;PREF;INTERNET:361way

  URL:http://www.111cn.net

  orG:361way运维之路

  ROLE:研发部

  TITLE:CTO

  ADR;WORK;POSTAL:杭州市西湖区XXX号;310000

  REV:2014-2-26T08:30:02Z

  END:VCARD

  如果你想更详细的定制所需要的格式,则需要详细的了解vcard的格式标准。

  */

  $vcard = array(

  'vname' => '用户名',

  'vtel' => '13800000000',

  'vemail' => 'aaaaa@163.com',

  'vaddress' => '杭州市西湖区',

  );

  generateQRfromGoogle($vcard);

  function generateQRfromGoogle($vcard,$widhtHeight ='150',$EC_level='L',$margin='0')

  {

     if($vcard){

        $chl = "BEGIN:VCARDnVERSION:3.0". //vcard头信息

        "nFN:".$vcard['vname'].

        "nTEL:".$vcard['vtel'].

     "nEMAIL:".$vcard['vemail'].

     "nADR:".$vcard['vaddress'].

        "nEND:VCARD"; //vcard尾信息

        echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.urlencode($chl).'" alt="QR code" widhtHeight="'.$size.'" widhtHeight="'.$size.'"/>';

     }

  }

  ?>


  如果想实现中间有logo的效果,需要通过另外一个logo小图进行拼接即可。这里只提供一种实现方法,也可以通过QRcode的方式进行生成。

  vcode的标准信息可以参看维基百科 。

  注:有些生成的图片经扫描没有的数据的原因是编码导致的,该问题在windows下较常见,由于很多编辑器默认提供的是ANSI编码,更改成utf8就OK了。
分享到:
本文"利用google api生成二维码名片"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4