欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php 条码

程序员文章站 2022-06-16 22:19:23
...
php 条形码

在一些生产制造行业条形码是必不可少的。比如,打印工作单、原材料出入库、成品出库发货等都需要扫描条形码进行数据采集。最近发现公司打印出的工作单上出现了条码,打印工单的程序是用PHP写的,于是乎看看源代码是怎么实现的。原来是通过一个生成Barcode的类将相应的数据转给该程序并生成JPG文件。

自己在网上搜了搜实现Barcode的其他方法,找到一个国外的开源程序专门用来生成“一维条形码”。首先,复习一下条形码的相关知识。

条形码分类

一、按码制分类

1.UPC码

1973年,美国率先在国内的商业系统中应用于UPC码之后加拿大也在商业系统中采用UPC码。UPC码是一种长度固定的连续型数字式码制,其字符集为数字0~9。它采用四种元素宽度,每个条或空是1、2、3或4倍单位元素宽度。IPC码有两种类型,即UPC-A码和UPC-E码。

2.EAN码

1977年,欧洲经济共同体各国按照UPC码的标准制定了欧洲物品编码EAN码,与UPC码兼容,而且两者具有相同的符号体系。EAN码的字符编号结构与UPC码相同,也是长度固定的、连续型的数字式码制,其字符集是数字0~9。它采用四种元素宽度,每个条或空是1、2、3或4倍单位元素宽度。EAN码有两种类型,即EAN-13码和EAN-8码。

3.交叉25码

交叉25码是一种长度可变的连续型自校验数字式码制,其字符集为数字0~9。采用两种元素宽度,每个条和空是宽或窄元素。编码字符个数为偶数,所有奇数位置上的数据以条编码,偶数位置上的数据以空编码。如果为奇数个数据编码,则在数据前补一位0,以使数据为偶数个数位。

4.39码

39码是第一个字母数字式码制。1974年由Intermec公司推出。它是长度可比的离散型自校险字母数字式码制。其字符集为数字0—9,26个大写字母和7特殊字符(-、。、Space、/、%、¥),共43个字符。每个字符由9个元素组成,其中有5个条(2个宽条,3个窄条)和4个空(1个宽空,3个窄空),是一种离散码。

5.库德巴码

库德巴码(Code Bar)出现于1972年,是一种长度可变的连续型自校验数字式码制。其字符集为数字0—9和6个特殊字符(-、:、/、。、+、¥),共16个字符。常用于仓库、血库和航空快递包裹中。

6.128码

128码出现于1981年,是一种长度可变的连续型自校验数字式码制。它采用四种元素宽度,每个字符由3个条和3个空,共11个单元元素宽度, 又称(11,3)码。它由106个不,同条形码字符,每个条形码字符有三种含义不同的字符集,分别为A、B、C。它使用这3个交替的字符集可将128个ASCII码编码。

7.93码

93码是一种长度可变的连续型字母数字式码制。其字符集成为数字。0-9,26个大写字母和7个特殊字符(-、。、Space、/、+、%、¥)以及4个控制字符。每个字符由3个条和3个罕,共9个元素宽度。

8.49码

49码是一种多行的连续型、长度可变的字母数字式码制。出现于1987年,主要用于小物品标签上的符号。采用多种元素宽度。其字符集为数字0-9,26个大写字母和7个特殊字符(-、。、Space、%、/、+、%、¥)、3个功能键(F1、 陀、F3)和3个变换字符,共49个字符。

9.其他码制

除上述码外,还有其他的码制,例如25码出现于1977年,主要用于电子元器件标签;矩阵25码是11码的变形;Nixdorf码已被EAN码所取代Plessey码出现于1971年5月主要用于图书馆等。

二、按维数分类

1.普通的一维条码

普通的一维条码自本问世以来,很快得到了普及并广泛应用。但是由于一维条码的信息容量很小,如商品上的条码仅能容13位的阿拉伯数字,更多的描述商品的信息只能依赖数据库的支持,离开了预先建立的数据库,这种条码就变成了无源之水,无本之木,因而条码的应用范围受到了一定的限制。

2.二维条码

除具有普通条码的优点外,二维条码还具有信息容量大、可靠性高、保密防伪性强、易于制作、成本低等优点。
美国Symbol公司于1991年正式推出名为PDF417的二维条码,简称为PDF417条码,即“便携式数据文件”。FDF417条码是一种高密度、高信息含量的便携式数据文件,是实现证件及卡片等大容量、高可靠性信息自动存储、携带并可用机器自动识读的理想手段。

3.多维条码

进入20世纪80年代以来,人们围绕如何提高条形码符号的信息密度,进行了研究工作。多维条形码和集装箱条形码成为研究、以展与应用的方向。
信息密度是描述条形码符号的一个重要参数据,即单位长度中可能编写的字母个数,通常记作:字母个数/cm。影响信息密度的主要因素是条、空结构和窄元系的宽度。
128码和93码就是人们为提高密度而进行的成功的尝试。128码城1981年被推荐应用;而93码于1982年投入使用。这两种码的符号密度均比39码高将近30%。
随着条形码技术的发展和条形码三制的种类不断增加,条形码的标准化显得愈来愈重要。为此,曾先后制定了军用标准1189;交叉25码、39码和Coda Bar码ANSI标准MH10.8M等。同时,一些行业也开始建立行业标准,以适应发展的需要。此后,戴维·阿利尔又研制出49码。这是一种非传统的条形码符号,它比以往的条形码符号具有更高的密度。特德·威廉姆斯(Ted Williams)GFI988推出16K码,该码的结构类似于49码,是一种比较新型的码制,适用于激光系统。

?

http://www.barcodephp.com/download.php

该软件支持PHP4和PHP5两个版本,本文中使用的是PHP5的版本。在使用前注意要将PHP的GD模块开启。在Windows中为php_gd2.dll,Linux中为gd.so。将压缩文件解压到Apache,执行http://localhost/barcode/index.php。界面见下图:

1. Type:选择条形码类型

2. Output:输出的图片格式

3. Thickness:条形码高度

4. Resolution:条形码大小

5. Font:条形码下方的文字大小,也可不显示文字

6. Text:条形码打印的内容

php 条码?

当然,这个程序只是将文字生成为条形码,但使用时不能灵活将其嵌入其他PHP程序,我将压缩包里面的test.php
做了一些调整,使其能灵活的用于其他程序。运行时只需将条码类型和文字传给test.php即可,例如:
http://localhost/barcode/test.php?codebar=BCGcode39&text=20090729

或运行 http://localhost/barcode/mytest.php

1 楼 huigou123 2011-09-19
太棒了
正好需要

2 楼 kaka100 2012-04-10
多谢您的支持!
近来忙吧,没看到新贴php 条码
php 条码

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • php 条码
  • 专题推荐

    作者信息
    php 条码

    认证0级讲师

    推荐视频教程
  • php 条码javascript初级视频教程
  • php 条码jquery 基础视频教程
  • 视频教程分类