科技赋能  降本增效  用猴哥二维码
7*24小时技术支持电话:18696527045 点此扫码
快速注册  | 登录
二维码技术
 二维码知识
 行业动态
 
 
 首页 ->二维码技术 ->行业动态更多  

二维码的原理以及怎么生成二维码



    一、什么是二维码:

二维码 (2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)
   分布的黑白相间的图形记录数据符号信息的。

二、常用的码制

Data Matrix, Maxi Code, Aztec, QR Code, Vericode, PDF417, Ultracode, Code 49, Code 16K等。

三、为什么叫二维码

二维码的名称是相对与一维码来说的:

比如以前的条形码,只有横向的竖条状信息,所以也叫“一维码”。

二维码呢,则是横向纵向都有信息,所有叫“二维码”。

二维码优点有:

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

二维码中,最流行莫过于QR CODE。

四、二维码为什么是黑白相间的?

因为黑色表示二进制的“1”,白色表示二进制的“0”。

我们之所以对二维码进行扫描能读出那么多信息,就是因为这些信息被编入了二维码之中。

制作二维码输入的信息可以分成三类:

? 文本信息,比如名片信息;

? 字符信息,比如网址、电话号码;

? 图片信息,甚至还可以包括简短的视频。

数据信息是怎么被编入的呢?

信息输入后,首先要选择一种信息编码的码制。现在常见的二维码都是以QR码作为编码的码制。QR码是矩阵式二维码,它是在一个矩形空间内,通过黑、白像素在矩阵中的不同分布,来进行编码的。我们知道电脑使用二进制(0和1)数来贮存和处理数据,而在二维码中,用黑白矩形表示二进制数据我们肉眼能看到的黑色表示的是二进制“1”,白色表示二进制的“0”,黑白的排列组合确定了矩阵式二维条码的内容,以便于计算机对二维码符号进行编码和分析。

五、QR CODE 介绍

QR(Quick-Response) code是被广泛使用的一种二维码,解码速度快。它可以存储多用类型
  在这里插入图片描述
   如上图时一个qrcode的基本结构,其中:
   位置探测图形、位置探测图形分隔符、定位图形:用于对二维码的定位,对每个QR码来说,位置都是固定存在的,只是大小规格会有所差异;
   校正图形:规格确定,校正图形的数量和位置也就确定了;
   格式信息:表示改二维码的纠错级别,分为L、M、Q、H;
   版本信息:即二维码的规格,QR码符号共有40种规格的矩阵(一般为黑白色),从21×21(版本1),到177×177(版本40),每一版本符号比前一版本 每边增加4个模块。
   数据和纠错码字:实际保存的二维码信息,和纠错码字(用于修正二维码损坏带来的错误)。
   简要的编码过程:

数据分析:确定编码的字符类型,按相应的字符集转换成符号字符; 选择纠错等级,在规格一定的条件下,纠错等级越高其真实数据的容量越小。数据编码:将数据字符转换为位流,每8位一个码字,整体构成一个数据的码字序列。其实知道这个数据码字序列就知道了二维码的数据内容。
  在这里插入图片描述

QR码可以从任意方向读取:

QR码从360°任一方向均可快速读取。其奥秘就在于QR码中的3处定位图案,可以帮助QR码不受背景样式的影响,实现快速稳定的读取。
  在这里插入图片描述

提示:

QR码是日本产的二维码,因此非常适合处理日文字母和汉字。QR码字集规格定义是按照日本标准“JIS第一级和第二级的汉字”制定的,因此在日语处理方面,每一个全角字母和汉字都用13比特的数据处理,效率较高,与其他二维码相比,可以多存储20%以上的信息。

六、QR码纠错功能

QR码具有“纠错功能”。即使编码变脏或破损,也可自动恢复数据。这一“纠错能力”具备4个级别,用户可根据使用环境选择相应的级别。调高级别,纠错能力也相应提高,但由于数据量会随之增加(对应二维码里包含的错误校验信息增加),编码尺寸也也会变大,图形也会变密。
   用户应综合考虑使用环境、编码尺寸等因素后选择相应的级别。 在工厂等容易沾染赃物的环境下,可以选择级别Q或H,在不那么脏的环境下,且数据量较多的时候,也可以选择级别L。一般情况下用户大多选择级别M(15%)。
  在这里插入图片描述
   那是怎么修正错误呢?

比如我要存一百个数字,那可以额外加一个这一百个数字的和,如果有一个数字缺失,那根据这个和求出,这个就是百分之一的可被修正。如果想两个缺失能被复原就需要再加一些参数。所以信息量就增加了,对应图形就越来越密了。

七、QR码的信息量和版本

QR码设有1到40的不同版本,每个版本都具备固有的码元结构(码元数)。
   码元是指构成QR码的方形黑白点。
   码元结构是指二维码中的码元数。从版本1(21码元×21码元)开始,在纵向和横向各自以4码元为单位递增,一直到版本40(177码元×177码元)。
  在这里插入图片描述
   QR码的各个版本结合数据量、字符类型和纠错级别,均设有相对应的最多输入字符数。也就是说,如果增加数据量,则需要使用更多的码元来组成QR码,QR码就会变得更大,更密。

八、具体实现PHP QR Code文档地址
  PHP QR Code下载地址

 通过引用PHP QR Code类库,最简单的调用方式
 必须开启支持GD2扩展库支持
include 
$PNG_WEB_DIR  设置二维码图片缓存路径
$PNG_TEMP_DIR  dirname__FILE__ DIRECTORY_SEPARATOR  DIRECTORY_SEPARATOR 如果二维码图片缓存路径不存在,则需要重新创建
!file_exists$PNG_TEMP_DIR
    mkdir$PNG_TEMP_DIR
$filename  $PNG_TEMP_DIR  设置二维码图片纠错级别
$errorCorrectionLevel isset$_REQUEST in_array$_REQUEST array
    $errorCorrectionLevel  $_REQUEST
$filename  $PNG_TEMP_DIR  md5$_REQUEST $errorCorrectionLevel  $matrixPointSize
    QRcodepng$_REQUEST $filename $errorCorrectionLevel $matrixPointSize
echo  $PNG_WEB_DIR  basename$filename 设置二维码图片大小
$matrixPointSize isset$_REQUEST
    $matrixPointSize  $_REQUEST 做一个限制大小,最小为,最大为 基准测试;生成耗时等
QRtoolstimeBenchmark 参数$text表示生成二位的的信息文本;
 参数$outfile表示是否输出二维码图片文件,默认否;
 参数$level表示容错率;分别是L(QR_ECLEVEL_L,),M(QR_ECLEVEL_M,),Q(QR_ECLEVEL_Q,),H(QR_ECLEVEL_H,);
 参数$size表示生成图片大小,默认是;
 参数$margin表示二维码周围边框空白区域间距值;
 参数$saveandprint表示是否保存二维码并显示
QRcodepng$text $outfile  false $level  QR_ECLEVEL_L $size  $margin  $saveandprintfalse;

QR Code 其它示例

参考文章1
  参考文章2



     先更新本地状态再去调第三方呗,这样只有本地状态更新成功后才会去调用第三方接口

     要是是第三方返回成功,但是本地退款失败,导致本地状态没更新成功怎么办呢

    

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
   2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。




视频二维码   音频二维码   图片二维码   PDF二维码   Word二维码   Excel二维码   PPT二维码   电话二维码   借还登记二维码   巡逻巡更二维码   扫码领奖品二维码   成绩查询二维码   视频直播二维码   产品二维码   商品二维码   员工二维码   展品二维码   景点二维码   签到登记二维码   报名二维码   企业二维码   客服二维码   手机二维码   设备二维码   巡检二维码   固定资产二维码  

微信扫码咨询:用专业为你解决问题

    推荐阅读:
  1、商品链接如何生成二维码   2、二维码怎么做出来的
  3、免费把PDF文件生成二维码,这个方法既美观又简单!   4、带有二维码的标签怎么设置
  5、二维码怎么打印出来   6、钉钉怎么生成签到二维码
  7、在线预约二维码   8、活码二维码如何制作,在线生成方法一网打尽
  9、如何打印二维码标签?   10、免费将文件制作成二维码的几大方法
  11、怎样将视频转化成二维码?将一个视频快速转成二维码的好方法   12、如何将PDF文件转换为二维码?有没有简便的方法将PDF转成二维码?
  
  

 

返回页首 
      
   猴哥码上办    网络技术支持   猴哥客服热线: 18696527045  
  版权所有@柴顺科技   ICP备案号:沪ICP备19042524号-2 沪ICP备19042524号-3 沪ICP备19042524号-4   | 管理