PDF417码
PDF417码是由留美华人王寅敬(音)博士发明的。PDF是取英文Portable Data File三个单词的首字母的缩写,意为“便携数据文件”。因为组成条码的每一符号字符都是由4个条和4个空构成,如果将组成条码的最窄条或空称为一个模块,则上述的4个条和4个空的总模块数一定为17,所以称417码或PDF417码。
PDF417的结构
由於PDF417的容量较大,除了可将人的姓名、单位、地址、电话等基本资料进行编码外,还可将人体的特徵如指纹、视网膜扫瞄、及照片等个人纪录储存在条码中,这样不但可以实现证件资料的自动输入,而且可以防止证件的伪造,减少犯罪。PDF417已在美国、加拿大、纽西兰的交通部门的执照年审、车辆违规登记、罚款及定期检验上开始应用。美国并同时将PDF417应用在身分证、驾照、军人证上。此外墨西哥也将PDF417应用在报关单据与证件上,从而防止了仿造及犯罪。
PDF417是一个公开码,任何人皆可用其演算法而不必付费,因此是一个开放的条码系统。PDF417的PDF为可携性资料档(Portable Data File)的缩写,取其条码类似一个资料档,可储存较多资料,且可随身携带或随产品走而得名(Paclidis, 1992)。正如其名,每一个PDF码的储存量可高达1,108个文数字(Bytes),若将数字压缩则可存放至2,729Bytes。
每一个PDF417码是由3~90横列堆叠而成,而为了扫瞄方便,其四周皆有静空区,静空区分为水平静空区与垂直静空区,至少应为0.020寸,如图所示。
PDF417码的结构其中每一层都包括下列五个部份:
起始码。 左标区:在起始码後面,为一指示符号字元。 资料区:可容纳1~30个资料字元。 右标区: 在资料区的後面,为一指示符号字元。 结束码:在横列之最右边。
除了起始码和结束码外,左标区、资料区和右标区的组成字元皆可称为字码 (Codeword),每一个字码由17个模组(Modules)所构成,每一个字码又可分成4线条(或黑线)及4空白(或白线),每个线条至多不能超过6个模组宽。每个417码因资料大小不同,其行数及每行的资料模组数与字码数都可以从1至30不等。字码的组成如图所示。
PDF417的尺寸
也因为符号的组合较有弹性,每一个PDF417条码可因应不同的实体设备印成不同的长宽比例与密度,以适应印刷条件及扫瞄条件的要求。其中每个模组宽X是PDF417码中最重要的尺寸之一,X值的最小限制为0.0075英寸(约0.191mm),在同一个条码符号中,X的值是固定不变的。
PDF417的最小高度与长度可由下列算式算出: W= (17C+69)X+ 2Q H = R ×Y+ 2Q
其中:
W= 条码宽度,H=条码高度,X=条码模组宽,Y=层数; C=每层符号字元的总数(含左右标区),R=层高,Q=静空区大小
PDF417码的特点
1. 信息容量大
PDF417码除可以表示字母、数字、ASCII字符外,还能表达二进制数。为了使得编码更加紧凑,提高信息密度,PDF417在编码时有三种格式:
* 扩展的字母数字压缩格式 可容纳1850 个字符;
* 二进制 / ASCII格式 可容纳1108 个字节;
* 数字压缩格式 可容纳2710 个数字。
2. 错误纠正能力 一维条码通常具有校验功能以防止错读,一旦条码发生污损将被拒读。而二维条码不仅能防止错误,而且能纠正错误,即使条码部分损坏,也能将正确的信息还原出来。
3. 印制要求不高 普通打印设备均可打印,传真件也能阅读。
4. 可用多种阅读设备阅读 PDF417码可用带光栅的激光阅读器,线性及面扫描的图像式阅读器阅读。
5. 尺寸可调以适应不同的打印空间。
6. 码制公开 已形成国际标准,我国也已制定了417码的国标。
PDF417的纠错功能
二维条码的纠错功能是通过将部分信息重复表示(冗余)来实现的。比如在PDF417码中,某一行除了包含本行的信息外,还有一些反映其它位置上的字符(错误纠正码)的信息。这样,即使当条码的某部分遭到损坏,也可以通过存在于其它位置的错误纠正码将其信息还原出来。

PDF417的纠错能力依错误纠正码字数的不同分为0~8共9级,见图4,级别越高,纠正码字数越多,纠正能力越强,条码也越大。当纠正等级为8时,即使条码污损50%也能被正确读出。
PDF417的几种变形
PDF417还有几种变形的码制形式:
* PDF417截短码 在相对"干净"的环境中,条码损坏的可能性很小,则可将右边的行指示符省略并减少终止符。
* PDF417微码 进一步缩减的PDF码。
* 宏PDF417码 当文件内容太长,无法用一个PDF417码表示时,可用包含多个(1~99999个)条码分块的宏PDF417码来表示。
PDF417的错误纠正能力
|
PDF417的一个重要特性是其自动纠正错误的能力较高,不过PDF417的错误纠正能力与每个条码可存放的资料量有关,PDF417码将错误复原分为9个等级,其值从0到8,级数愈高,错误纠正能力愈强,但可存放资料量就愈少,一般建议编入至少10%的检查字码。资料存放量与错误纠正等级的关系如表1所示。表2则建议不同的字数所适用的错误纠正等级。 表1 可存放资料量与错误纠正等级对照表
表2 PDF417的建议错误纠正等级
如前所述,错误纠正等级涉及拒读错误(E错误)与替代错误(T错误)两种错误类型。无论使用哪一种条码机都有一定的精密度极限,造成线条和空白的宽度与理想宽度间必有偏差存在,条码扫瞄设备能够读出解码演算法所允许范围内的不精确条码符号,目前标准中规定X的值最小为0.0075英寸(约0.191mm),此一限制同时反映出目前标准设备的技术现状。综合本节所讨论,PDF417的特性如表3所示。 表3 PDF417的特性
|
PDF417条码的标准化现状
自Symbol公司1991年将PDF417作为公开的系统标准后,PDF417条码为越来越多的标准化机构所接受。如:
AIM——1994年被选定为国际自动识别制造商协会(AIM)标准;
ANSIMH10.8——1996年美国标准化委员会(ANSI)已将PDF417条码做为美国的运输包装的纸面EDI的标准;
CEN——1997年欧洲标准化委员会(CEN)通过了PDF417的欧洲标准;
国际标准化组织(ISO)与国际电工委员会(IEC)的第一联合委员会第三十一分委员会正在起草PDF417二维条码标准;
中国——PDF417二维条码已列为95期间的国家重点科技攻关项目。1997年12月PDF417条码国家标准《四一七条码》已经正式颁布;
AIAG/ODETTE——1995年北美和欧洲汽车工业组织已将PDF417选定为各种生产及管理/纸面EDI的标准;
AAMVA——1995年美国机动车管理局将PDF417选定为所有驾驶员及机动车管理的二维条码应用标准。美国一些州、加拿大部分省份已经在车辆年检、行车证年审及驾驶证年审等方面,将PDF417选为机读标准;
TCIF——美国工业论坛已将PDF417列为重要电讯产品的标识标准;
EDIFICE——欧洲负责EDI及条码在电子工业方面应用的工业组织已将PDF417定为管理/纸面EDI应用标准,并列入运输标识条码标签应用指南;
巴林——已将PDF417定为身份证的机读标准,最近还将有一些国家陆续在身份证上选用PDF417二维条码;
美国国防部在其新的军人身份证上采用PDF417条码作为机读标准,将照片及紧急医疗信息编入条码,大约16,000,000多张军人卡已在700多个世界各地的美军基地投入使用。另外,美国国防部还将PDF417条码作为后勤管理和纸面EDI应用标准。
PDF417码的更多相关文章
- PDF417码制尺寸定义
PDF417码制尺寸定义 1.模块宽度(X)不得小于0.191mm,你们目前所用300dpi打印机点的尺寸是0.084 mm * 0.01 mm,可 三倍以上值 2.条 ...
- 二维码PDF417简介及其解码实现(zxing-cpp)
二维码PDF417是一种堆叠式二维条码.PDF417条码是由美国SYMBOL公司发明的,PDF(Portable Data File)意思是"便携数据文件".组成条码的每一个条码字 ...
- (zxing.net)二维码PDF417的简介、实现与解码
一.简介 二维码PDF417是一种堆叠式二维条码.PDF417条码是由美国SYMBOL公司发明的,PDF(Portable Data File)意思是“便携数据文件”.组成条码的每一个条码字符由4个条 ...
- Java 条形码 二维码 的生成与解析
Barcode简介 Barcode是由一组按一定编码规则排列的条,空符号,用以表示一定的字符,数字及符号组成的,一种机器可读的数据表示方式. Barcode的形式多种多样,按照它们的外观分类: Lin ...
- 微信公共服务平台开发(.Net 的实现)9-------处理二维码
今天我们来共同学习一下微信公共服务平台中一个重要内容---二维码扫描.众所周知二维码目前应用范围很广,在这里不再叙述背景了,但是值得一提的是目前大家手机上面应用的二维码扫描工具是支持的都是QR码和PD ...
- 扫描PDF417崩溃的原因找到:手机摄像头分辨率低
换孩子姥姥华为手机解决了. 能扫pdf417码了
- 【读书笔记】iOS-iOS6 Passbook应用开发
Passbook 是iOS6的新功能,只能在iPhone和iPod touch设备中使用,它可以帮助管理商家发放的电子会员卡,积分卡,优惠券等. 一,Passbook 与 Pass. Passbook ...
- 利用Aspose.BarCode生成条码
生成条码有很多控件,大部分好的控件,做出来的条码精确清晰,但是往往该部分的控件费用都很高,这里推荐大家使用6.0版本的破解版,可以生成无水印,下方也可以不显示文字. 1.下图是 onbarcode 控 ...
- Zbar和Z*算法对比
博客转载自:https://blog.csdn.net/qishandaxue/article/details/45481387 移植zbar和zxing源码到linux平台,zbar移植的是C源码, ...
随机推荐
- openStack deep dive,Retake Policy
Method of Payment: visa MasterCard American Express Discover
- Linux中环境变量到底写在哪个文件中?解析login shell 和 no-login shell
login shell:取得bash 时需要完整的登入流程,就称为login shell.举例来说,同tty1~tty6登入时, 需要输入用户名和密码,此时取得的bash就称为login shell ...
- javascrip cookie
首先要明白一下cookie的概念.由于HTTP协议是一种无状态协议,也就是说一旦server和client的数据交换完成后,他们之间的连接就会被断开.再次交换数据的时候就须要再次建立连接.这就意味着s ...
- 2013杭州网络赛D题HDU 4741(计算几何 解三元一次方程组)
Save Labman No.004 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- Auto-Layout 的各种坑Unable to create description in descriptionForLayoutAttribute_layoutItem_coefficient. Something is nil'
我们的很多人现在都在使用autolayout,用着也是非常爽但是有了这个东西以后更爽 很省事,什么都不用自己搞.Xcode完全搞定了,但是我终于为自己的懒惰付出了代价,再iphone4怎么运行怎么cr ...
- 访问权限系列一(public/private/protected/default):成员变量
通过两个程序包对自身或互相之间的访问,得到结果.(先编译Test_01,得到class文件,通过Test的集中访问情况) 如下Test.java中内容: package com.java; /* * ...
- MySQL 事物
BEGIN DECLARE result INTEGER DEFAULT 0; -- 标记是否出错 DECLARE t_error INTEGER DEFAULT 0; -- 如果出现sql异常,则将 ...
- spoj 375 QTREE - Query on a tree 树链剖分
题目链接 给一棵树, 每条边有权值, 两种操作, 一种是将一条边的权值改变, 一种是询问u到v路径上最大的边的权值. 树链剖分模板. #include <iostream> #includ ...
- css为网页顶部和底部都加入背景图
网页背景图是我们常用的功能,一般来说.给网页加一个背景图,只要在网页的body标签中加入css属性就行. 代码如下:<body style="background-image:url( ...
- 从51跳新唐cortex学习3——细说新唐两种定时器
的定时器我们已经是相当熟悉啦.但是,对于第一次接触新唐,第一次接触cortex的定时器一样,都是加1计数,但是功能和容量变大了),包括4个32位定时器(里面放24位的数据),还有分频功能.TMER0到 ...