`

一个不错的生成条形码的jquery插件兼介绍条形码

阅读更多
首先介绍下条形码的原理先:
条形码技术最早产生在风声鹤唳的二十年代,诞生于Westinghouse的实验室里。一位名叫John Kermode性格古怪的发明家“异想天开”地想对邮政单据实现自动分检,那时候对电子技术应用方面的每一个设想都使人感到非常新奇。

他的想法是在信封上做条码标记,条码中的信息是收信人的地址,就象今天的邮政编码。为此Kermode发明了最早的条码标识,设计方案非常的简单(注:这种方法称为模块比较法),即一个“条”表示数字“1”,二个“条”表示数字“2”,以次类推。然后,他又发明了由基本的元件组成的条码识读设备:一个扫描器(能够发射光并接收反射光);一个测定反射信号条和空的方法,即边缘定位线圈;和使用测定结果的方法,即译码器。

Kermode的扫描器利用当时新发明的光电池来收集反射光。“空”反射回来的是强信号,“条”反射回来的是弱信号。与当今高速度的电子元气件应用不同的是,Kermode利用磁性线圈来测定“条”和“空”。就象一个小孩将电线与电池连接再绕在一颗钉子上来夹纸。Kermode用一个带铁芯的线圈在接收到“空”的信号的时候吸引一个开关,在接收到“条”的信号的时候,释放开关并接通电路。因此,最早的条码阅读器噪音很大。开关由一系列的继电器控制,“开”和“关”由打印在信封上“条”的数量决定。通过这种方法,条码符号直接对信件进行分检。

此后不久, Kermode的合作者Douglas Young,在Kermode码的基础上作了些改进。

Kermode码所包含的信息量相当的低,并且很难编出十个以上的不同代码。而Young码使用更少的条,但是利用条之间空的尺寸变化,就象今天的UPC条码符号使用四个不同的条空尺寸。新的条码符号可在同样大小的空间对一百个不同的地区进行编码,而Kermode码只能对十个不同的地区进行编码。

直到1949年的专利文献中才第一次有了Norm Woodland和Bernard Silver发明的全方位条形码符号的记载,在这之前的专利文献中始终没有条形码技术的记录,也没有投入实际应用的先例。Norm Woodland和Bemard Silver的想法是利用Kermode和YOung的垂直的“条”和“空”,并使之弯曲成环状,非常象射箭的靶子。这样扫描器通过扫描图形的中心,能够对条形码符号解码,不管条形码符号方向的朝向。

在利用这项专利技术对其进行不断改进的过程中,一位科幻小说作家Isaac-Azimov在他的“裸露的太阳”一书中讲述了使用信息编码的新方法实现自动识别的事例。那时人们觉得此书中的条形码符号看上去象是一个方格子的棋盘,但是今天的条形码专业人士马上会意识到这是一个二维矩阵条形码符号。虽然此条形码符号没有方向、定位和定时,但很显然它表示的是高信息密度的数字编码。

直到1970年Iterface Mechanisms公司开发出“二维码”之后,才有了价格适于销售的二维矩阵条码的打印和识读设备。那时二维矩阵条形码用于报社排版过程的自动化。二维矩阵条形码印在纸带上,由今天的一维CCD扫描器扫描识读。CCD发出的光照在纸带上,每个光电池对准纸带的不同区域。每个光电池根据纸带上印刷条码与否输出不同的图案,组合产生一个高密度信息图案。用这种方法可在相同大小的空间打印上一个单一的字符,作为早期Kermode码之中的一个单一的条。定时信息也包括在内,所以整个过程是合理的。当第一个系统进入市场后,包括打印和识读设备在内的全套设备大约要5000美元。

此后不久,随着LED(发光二极管)、微处理器和激光二极管的不断发展,迎来了新的标识符号(象征学)和其应用的大爆炸,人们称之为“条码工业”。今天很少能找到没有直接接触过即快又准的条形码技术的公司或个人。由于在这一领域的技术进步与发展非常迅速,并且每天都有越来越多的应用领域被开发,用不了多久条形码就会象灯泡和半导体收音机一样普及,将会使我们每一个人的生活都变得更加轻松和方便。

条形码技术的优点

条形码是迄今为止最经济、实用的一种自动识别技术。条形码技术具有以下几个方面的优点

A.输入速度快:与键盘输入相比,条形码输入的速度是键盘输入的5倍,并且能实现"即时数据输入"。

B.可靠性高:键盘输入数据出错率为三百分之一,利用光学字符识别技术出错率为万分之一,而采用条形码技术误码率低于百万分之一。

C.采集信息量大:利用传统的一维条形码一次可采集几十位字符的信息,二维条形码更可以携带数千个字符的信息,并有一定的自动纠错能力。

D.灵活实用:条形码标识既可以作为一种识别手段单独使用,也可以和有关识别设备组成一个系统实现自动化识别,还可以和其他控制设备联接起来实现自动化管理。

另外,条形码标签易于制作,对设备和材料没有特殊要求,识别设备操作容易,不需要特殊培训,且设备也相对便宜。

编码规则

唯一性:同种规格同种产品对应同一个产品代码,同种产品不同规格应对应不同的产品代码。根据产品的不同性质,如:重量、包装、规格、气味、颜色、形状等等,赋予不同的商品代码。

永久性:产品代码一经分配,就不再更改,并且是终身的。当此种产品不再生产时,其对应的产品代码只能搁置起来,不得重复起用再分配给其它的商品。

无含义:为了保证代码有足够的容量以适应产品频繁的更新换代的需要,最好采用无含义的顺序码。

条形码的码制区别

UPC:(统一产品代码)

只能表示数字有A、B、C、D、E四个版本 版本 A - 12 位数字 版本 E - 7 位数字 最后一位为校验位 大小是宽1.5" 高1 " ,而且背景要与清晰 主要使用于美国和加拿大地区,用于工业、医药、仓库等部门。当UPC 作为十二位进行解码时,定义如下: 第一位 = 数字标识 (已经由UCC(统一代码委员会)所建立). 第2-6位 = 生产厂家的标识号(包括第一位) 第7-11 = 唯一的厂家产品代码 第12位 = 校验位(used for error detection)

Code 3 of 9 :

能表示字母、数字和其它一些符号共43个字符:A -Z,0 - 9,-.$/+%,pace 条形码的长度是可变化的,通常用“*”号作为起始、终止符校验码不用代码密度介于3 - 9.4个字符/每英寸,空白区是窄条的10倍,用于工业、图书、以及票证自动化管理上。

Code 128:

表示高密度数据, 字符串可变长,符号内含校验码,有三种不同版本: A, B, and C 可用128个字符分别在 A, B, or C 三个字符串集合中,用于工业、仓库、零售批发。

Interleaved 2-of-5 (I2 of 5):

只能表示数字0 -9 可变长度,连续性条形码,所有条与空都表示代码,第一个数字由条开始,第二个数字由空组成 空白区比窄条宽10倍,应用于商品批发、仓库、机场、生产/包装识别、工业中,条形码的识读率高,可适用于固定扫描器可靠扫描,在所有一维条形码中的密度最高。

Codabar(库德巴条形码):

可表示数字0 - 9,字符$、+、 -、还有只能用作起始/终止符的a, b, c d四个字符,可变长度,没有校验位,应用于物料管理、图书馆、血站和当前的机场包裹发送中,空白区比窄条宽10,非连续性条形码,每个字符表示为4条3空。

PDF417 (二维码):

多行组成的条形码,不需要连接一个数据库,本身可存储大量数据,应用于:医院、驾驶证、物料管理、货物运输,当条形码受一定破坏时,错误纠正能使条形码能正确解码PDF417, 是Symbol科技公司于1990研制产品。它是一个多行、连续性、可变长、包含大量数据的符号标识。每个条形码有3 - 90行,每一行有一个起始部分、数据部分、终止部分。它的字符集包括所有128个字符,最大数据含量是1850个字符。


    发现有个不错的网站,使用了JQUERY去产生二维码,地址是:
http://barcode-coder.com/en/

  另外如果JAVA方面,也可以用生成servlet的方法去生成,用的比较多的是:
barbecue和barcode4j,转一段说明:
1、 google或者摆渡一下barcode4j要用的东东,下载压缩包barcode4j-2.0alpha2-bin.zip和barcode4j-2.0alpha2-src.zip。


2、 解压barcode4j-2.0alpha2-bin.zip这个包,在build目录下有barcode4j.jar,在lib目录下有avalon-framework-4.2.0.jar, 将barcode4j.jar和avalon-framework-4.2.0.jar添加到项目的lib中,刷新工程,然后在项目配置中将这两个jar包添加到classpath里面去。

3、 解压将barcode4j-2.0alpha2-src.zip,将src\java\org\krysalis\barcode4j\servlet 目录下的BarcodeServlet.java类的代码拷出来,修改默认的图片显示方式,BarcodeServlet.java第168行的默认图片显示格式改成jpeg(因为不是所有的浏览器都支持svg格式,也不是所有的浏览者都愿意给自己的浏览器加一个这样的插件)

4、 将以下这段servlet配置在web.xml中
<servlet>
<servlet-name>BarcodeServlet</servlet-name>
<servlet-class>com.yourname.BarcodeServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>BarcodeServlet</servlet-name>
<url-pattern>/barcode</url-pattern>
</servlet-mapping>

4、 在页面中添加<img src="<%=request.getContextPath() %>/barcode?msg=12345678" height="50px" width=130px/>

5、 查看该页面就可以发现条形码为“12345678”的图片了,当然了图片大小就自己设置了。


2
1
分享到:
评论

相关推荐

    jquery-生成条形码

    1. 插件选择:在jQuery中生成条形码,通常需要借助专门的条形码插件,如"jquery-barcode"或"barcodejs"。这些插件提供了API,允许我们通过JavaScript调用来生成条形码图像。 2. 引入插件:首先,在HTML文件中引入...

    jquery生成条形码

    希望打家下载这个js可以搭配jQuery插件进行条形码的生成

    jQuery+HTML5实现条形码插件

    例如,Canvas元素允许我们在网页上进行动态图形绘制,这对于生成条形码至关重要。通过JavaScript控制Canvas,我们可以按需绘制条形码的各种条纹和空格,以形成特定的条形码格式,如EAN-13、UPC-A或Code 128等。 要...

    生成条形码的程序(两种实现方式)

    在客户端,可以使用img标签引用这个URL,或者利用JavaScript库如jQuery Barcode插件在浏览器端直接生成条形码。 在下载的"生成条形码的程序"压缩包中,可能包含了示例代码和必要的资源文件,供开发者参考和学习。...

    jQuery二维码,条形码生成实例

    使用方法类似,首先引入插件,然后调用函数生成条形码: ```javascript $("#barcodeDiv").barcode("1234567890", "code128", { barWidth: 2, barHeight: 50 }); ``` 在这个例子中,`#barcodeDiv`是条形码显示的...

    jquery二维条形码

    在IT行业中,二维条形码(也称为二维码)是一种存储信息的高效方式,它能够包含比传统一维条形码更多的数据,如网址、文本、联系信息等。jQuery是一个广泛使用的JavaScript库,它简化了HTML文档遍历、事件处理、动画...

    js条形码.min.rar

    总的来说,"js条形码.min.rar"提供了一个高效且易用的JavaScript解决方案,用于在网页上生成条形码。通过这个压缩包,开发者可以快速地将条形码功能引入到自己的项目中,提高数据处理和可视化的能力。

    jquery.barcode 生成条形码

    jQueryBarcode是一款实用的JavaScript插件,它允许开发者在网页上方便地生成条形码,无需复杂的编程技巧,只需简单的配置即可实现。本文将深入探讨这款插件的使用方法、功能特性以及相关示例。 首先,jQueryBarcode...

    jQuery-barcode条形码二维码生成

    jQuery库本身并不直接提供生成条形码的功能,但可以通过调用第三方插件如"jquery-barcode"或"jquery-qrcode"来实现。这些插件利用HTML5的Canvas元素或SVG(Scalable Vector Graphics)技术,将数据转化为可视化的...

    jQuery+HTML5条形码生成代码.zip

    这个压缩包“jQuery+HTML5条形码生成代码.zip”提供了一个实用的解决方案,它允许开发者在网页上轻松生成条形码。以下是对这个项目中涉及的技术和实现方式的详细解析。 ### jQuery 简介 jQuery 是一个快速、简洁的...

    JS生成条形码精简版

    "JS生成条形码精简版"通常是指一个专门的JavaScript库或插件,能够帮助开发者在网页上便捷地创建条形码。 首先,我们来看"sample-jquery-barcode-2.0.2"这个文件名,可以推测这是一个基于jQuery的条形码生成库的...

    [jquery]条形码二维码

    这通常是指引入一个专门用于生成条形码和二维码的JavaScript库。例如,`jquery-barcode`和`jquery-qrcode`是两个常用的插件,它们提供了简单易用的API来生成相应的图形。在实际应用中,我们可以通过CDN链接或者下载...

    条形码生成插件bwip.js

    `bwip.js`是一款强大的条形码生成插件,它提供了丰富的条码编码功能,支持超过90种不同的条码类型和标准,满足了各种行业对条码生成的需求。这款插件是JavaScript实现的,可以在网页端直接使用,无需依赖其他服务器...

    分享好用的第三方条形码生成插件

    总之,JsBarcode是一个功能强大、易用的JavaScript条形码生成库,为Web开发者提供了在网页上生成条形码的便捷途径。无论你是进行企业级应用开发还是个人项目,都可以借助JsBarcode轻松实现条形码的生成和管理。

    jQuery生成二维码插件.zip

    jQuery生成二维码插件是Web开发中的一个实用工具,它使得在网页上动态生成二维码变得简单易行。这个插件名为jQuery.qrcode,是基于流行的JavaScript库jQuery构建的,旨在为开发者提供一种轻量级且灵活的方式来创建...

    Jquery创建一维条码二维QRCode条码脚本源码

    要使用jQuery创建条码,我们需要一个专门的jQuery插件,这个插件在描述中被称为“内附插件”。在这个案例中,"JqueryBarcode"很可能是这个插件的名字。这个插件通常会提供API接口,使得开发者可以通过JavaScript调...

    code128条码生成工具.zip

    2. **barcode插件**:例如`jquery.barcode.min.js`,这是用于生成条形码的jQuery插件,包含了一系列用于创建和配置条形码的方法。 3. **示例文件**:可能包含一个HTML文件,如`example.html`,展示如何在网页中集成...

    基于HTML5 Canvas的EAN13条形码生成插件

    jQuery.EAN13.js是一款基于HTML5 Canvas的EAN13条形码生成插件。该EAN13条形码插件可以配合jQuery来使用,也可以通过纯JavaScript来进行调用。通过该插件可以非常轻松的在页面上生成EAN13条形码。

    jquery条码打印插件

    本文将围绕“jQuery条码打印插件”这一主题,深入探讨其功能、工作原理以及实际应用。 首先,我们需要理解jQuery条码打印插件的核心价值。在描述中提到,这款插件“非常好用”,这源于其简洁的API接口和良好的兼容...

    jQuery基于qrcode.js网页二维码生成插件.zip

    **jQuery基于qrcode.js网页二维码生成插件** 在网页开发中,二维码(Quick Response Code,简称QR码)已经成为一种常见的信息传递方式,特别是在移动设备上。`jQuery`是一个广泛使用的JavaScript库,它简化了DOM...

Global site tag (gtag.js) - Google Analytics