二维条码PDF417编码原理及其软件实现精.docx

上传人:b****8 文档编号:8983895 上传时间:2023-05-16 格式:DOCX 页数:12 大小:335.96KB
下载 相关 举报
二维条码PDF417编码原理及其软件实现精.docx_第1页
第1页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第2页
第2页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第3页
第3页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第4页
第4页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第5页
第5页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第6页
第6页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第7页
第7页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第8页
第8页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第9页
第9页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第10页
第10页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第11页
第11页 / 共12页
二维条码PDF417编码原理及其软件实现精.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

二维条码PDF417编码原理及其软件实现精.docx

《二维条码PDF417编码原理及其软件实现精.docx》由会员分享,可在线阅读,更多相关《二维条码PDF417编码原理及其软件实现精.docx(12页珍藏版)》请在冰点文库上搜索。

二维条码PDF417编码原理及其软件实现精.docx

二维条码PDF417编码原理及其软件实现精

收稿日期:

20060911

基金项目:

教育部留学回国基金:

喷墨式CTP关键技术项目资助(K40604040114

作者简介:

赵博(1980-,男,西安人,西安电子科技大学,硕士研究生,主要研究方向为精密测试技术等。

二维条码PDF417编码原理及其软件实现

赵博,黄进

(西安电子科技大学,西安710071

摘要:

介绍了二维条码PDF417的编码原理,给出了在文本压缩模式下编码的程序流程图,并且用VisualBasic语言完成了其编码打印软件,经实验验证所编程序可以准确无误地实现PDF417条码的编码和打印。

关键词:

PDF417条码;编码算法;条码打印软件

中图分类号:

TP391.44文献标识码:

A文章编号:

1001-3563(200707-0096-03

CodingPrincipleofTwo

DimensionBarCodePDF417

andItsSoftwareImplementation

ZHAOBo,HUANGJin

(XidianUniversity,Xia'n710071,China

Abstract:

TheprincipleofcodingtwodimensionbarcodePDF417wasintroduced.Theflowchartofcodingbarcodeundertextcompressionmodewasprovided,andthesoftwareofcodingandprintingwaswrittenwithVisualBasic.Itwasprovedthattheprogramcanexecutethecodingandprintingfunctioncorrectly.

Keywords:

PDF417barcode;arithmeticofcoding;barcodeprintingsoftware

二维条码技术是在计算机与信息技术基础上发展起来的一种标准化信息存储、传递和自动识别技术,具有成本低、容量大、可靠性高、编码方式灵活、保密防伪性强、不依赖后台数据库等优点。

其中应用最广泛的是美国Symbol公司发明的PDF417二维条码,在国外已被使用在国防、公共安全、交通运输、物流、医疗保健、工业自动化、商业、金融、海关及政府管理等领域,并取得了巨大的社会效益和经济效益[1-2]。

在我国,大部分的技术和设备目前仍然以引进居多,致使二维条码使用成本较高,限制了二维条码的普及应用,通过VisualBasic6.0编制实现二维条码编码打印软件,为二维条码PDF417在我国的进一步普及应用作了一些有益的工作。

1PDF417条码简介

PDF是取英文PortableDataFile3个单词的首字母缩写,意为便携数据文件。

因为组成条码的每一符号字符都是由4个条和4个空构成,如果将组成条码的最窄条或空称为一个模块,则上述的4个条和4个空的总模块数为17,所以称四一七条码或PDF417码

[3-4]

条码的符号结构见图1。

PDF417条码的符号尺寸是可变的,高度范围为390行,宽度范围为90583X,X是符号的模块宽度。

条码的最大数

据量

a左空白区;

b起始符;

c左行指示符号字符;

d130个数据符号字符;

e右行指示符号字符;

f终止符;

g右空白区。

图1PDF417条码的符号结构

Fig.1PDF417barcodestructure

(错误纠正等级为0时为每个符号表示1850个大写字母或2710个数字或1108个字节。

2二维条码PDF417的编码

PDF417条码的编码分为数据码字编码、错误纠正码字编码、前后行指示符编码3个部分。

有3种数据压缩模式:

文本压缩模式(TC;字节压缩模式(BC;数字压缩模式(NC。

2.1字节压缩模式(BC

字节压缩模式通过基256至基900的转换,将字节序列转换为码字序列。

96

包装工程PACKAGINGENGINEERINGVo.l28No.12007.01

对于字节压缩模式,有2个模式锁定(901,924:

(1当所要表示的字节总数不是6的倍数时,用模式锁定901;当所表示的字节总数为6的倍数时,用模式锁定924。

在应用模式锁定924的情况下,6个字节可通过基256至基900的转换用5个码字表示,从左到右进行转换。

(2当所要表示的字节数不是6的倍数时,必须使用模式锁定码字901,前每6个字节的转换方法与上述方法相同,对被6整除所剩余的字节应每个字节对应一个码字,逐字节用码字表示。

2.2数字压缩模式(NC

数字压缩模式是指从基10至900的数据压缩的一种方法。

数字压缩模式能把约3个数字位用一个码字表示。

尽管在任意数字长度下都可以应用数字压缩模式,一般推荐当连续的数字位数大于13时,用数字压缩模式,否则应用文本压缩模式。

在数字模式下,将根据下述算法对数字位进行编码:

(1将数字序列从左向右每44位分为一组,最后一组包含的数字位可以少于44个。

(2对于每一组数字:

首先在数字序列前加一位有效数字1(即前导位,然后执行基10至基900的转换。

2.3文本压缩模式(TC

以最常用的文本压缩模式为例来说明其计算机编码算法:

2.3.1数据码字编码

子模式:

文本压缩模式是每一符号起始的默认有效的压缩模式。

为了更有效的表示数据,文本压缩又分为4个子模式:

大写字母型子模式、小写字母型子模式、混合型子模式、标点型子模式。

在子模式中,每一个字符对应一个值(029。

子模式之间的切换:

在文本压缩模式中,每一个码字用2个基为30的值表示(范围为029。

如果在一个字符串的尾部有奇数个基为30的值,需要用值为29的虚拟字符ps填充最后一个码字。

这样就可以用一个单独的码字表示一个字符对,表示字符对的码字由下式计算:

码字=30H+L

式中:

H,L依次表示字符对中的高位和低位字符值。

2.3.2错误纠正码

对于一组给定的数据码字,错误纠正等级根据ReedSolomon错误控制码算法计算。

纠正码字的计算步骤:

第一步:

建立符号数据多项式。

符号数据多项式如下:

d(x=d

n-1xn-1+d

n-2

xn-2++d

1

x+d

式中:

多项式的系数由数据区码字组成。

其中包括长度码、数据码字、填充码和宏四一七条码控制块。

其中d

n

为数据

码字d

0d

n-1

n为数据码字数(包括数据长度码字

每一数据码字(d

i

i=0n-2,n-1在417条码符号中的排列位置,见图2。

L0dn-1dn-2R0

L1R1

Lm-2d0ck-1ck-2Rm-2

Lm-1c1c0Rm-1

图2数据、行标识符及错误纠正码的排列位置

Fig.2Thepositionofdata,rowidentifier

anderrorcorrectingcode

第二步:

建立纠正码字的生成多项式。

k个错误纠正码字的生成多项式如下:

g

k

(x=(x-3(x-32...(x-3k=

+

1

x+

k-1xk-1+xk

式中:

k为错误纠正码字c

i

(i=0k-2,k-1的个数;k

=2s+1,s为错误纠正等级;

k

为多项式g

k

(x展开后各项的系

数序列;c

i

在417条码符号中的排列位置见图2。

第三步:

错误纠正码字计算。

对一组给定的数据码字和一选定的错误纠正等级,错误纠正码字为符号数据多项式d(x乘以xk,然后除以生成多项式g(x,所得余式的各系数的补

数。

如果c

i

>-929,在有限域GF(929中的负值等于该值的

补数;如果c

i

-929,在有限域GF(929中的负值等于余数

(c

i

/929的补数。

2.3.3前后行指示符

行指示符号字符包括左行指示符号字符(L

i

和右行指示

符号字符(R

i

分别与起始符

和终止符相邻,见表1。

行指示符号字符的值(码字指示四一七条码的行号(i,行数(390,数据区中的数据符号的列数(130,错误纠正等级(08。

左行指示符号字符(L

i

的值由下式确定:

L

i

=

30x

i

+

y当c

i

=0

30x

i

+z当c

i

=3

30x

i

+v当c

i

=6

右行指示符号字符(R

i

的值由下式确定:

R

i

=

30x

i

+v当c

i

=0

30x

i

+y当c

i

=3

30x

i

+z当c

i

=6

式中:

x

i

=INT[(行号-1/3],i=1,2,3,(90

y=INT[(行数-1/3]

z=错误纠正等级3+(行数-1mod3

v=数据区的列数-1

c

i

=第i行簇号

97

赵博等二维条码PDF417编码原理及其软件实现

3在VisualBasic[5]

下实现编码软件

3.1PDF417条码在文本模式下编码程序

流程见图3

图3编码程序流程图

Fig.3Flowchartofcodingprogram

3.2PDF417条码生成程序友好界面

见图4所示友好界面中,从便于研究验证的角度出发,设置了生成、显示数据码字和条空字符的数据,以便每一步都可以监控到数据变化的正确与否,从而通过分析数据为发现问题,

调试程序提供直接依据。

图4PDF417条码生成程序友好界面

Fig.4FriendlyinterfaceofPDF417barcodegenerationsoftware当输入文本字符、列数(这里指数据码字的列数、选择纠错等级后,直接点击一键生成按钮,就可以直接从显示窗口Form2上显示出相应的PDF417条码,然后点击打印窗口按钮,就可以直接打印出对应条码,简便明了。

当然我们可以将PDF417条码保存为mdi格式的图像,然后按照实际需求来调

整图像的长宽比、大小等,之后打印出合适的条码图像。

这里

给出了常用的文本压缩模式下的程序流程图,其它2种模式下编码情况根据本文开始所列的各自算法来完成,过程与文本压缩模式下的条码生成相类似。

3.3生成PDF417二维条码

条码生成程序从第一行开始分黑色和白色模块按条空字符数据画出小矩形条,从左至右,从上到下,逐行绘制,直到最后一行结束,见图5。

条码原始信息:

PDF417PDF417PDF417

图5实验中软件生成的条码

Fig.5Barcodegeneratedbythesoftware

4结语

本文实现的PDF417编码系统具有信息录用方便、易于操作维护、界面友好等优点。

实验结果表明所生成的PDF417二维条码,可以被二维条码扫描仪准确无误地读取从而获得原始信息。

此外,此PDF417编码系统可方便地移植到打印控制器

中,从而方便的制成PDF417二维条码打印机。

参考文献:

[1]中国物品编码中心.条码技术与应用[M].北京:

清华大学出版

社,2003.

[2]肖朝晖,纪钢.条码技术及其在包装防伪中的应用[J].包装工

程,2005,26(3:

68-70.

[3]GB/T17172-1997.四一七条码[S].

[4]PAVLIDIST,SWARTZJ,WANGYP.FundamentalsofBarCode

InformationTheory[J].IEEEComputerMagazine,1990,23(4:

74-76.

[5]刘瑞新,崔淼,等.VisualBasic程序设计[M].北京:

机械工业出

版社,2003.

98

包装工程PACKAGINGENGINEERINGVo.l28No.12007.01

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2