一、简介

UPC(Universal Product Code)码是最早大规模应用的条码,其特性是一种长度固定、连续性的条  码,目前主要在美国和加拿大使用,由于其应用范围广泛,故又被称万用条码。 UPC码仅可用来表示数字,故其字码集为数字0~9。UPC码共有A、B、C、D、E等五种版本。

UPC A码又称UPC标准码,它的结构如下图:

每个UPC A码包含部分如下图:

UPC A码具有以下特点:

  1. 每个字码皆由7个模组组合成2线条2空白,其逻辑值可用7个二进制数字表示,例如逻辑值0001101代表数字1,逻辑值0为空白,1为线条,故数字1的UPC-A码为粗空白(000)-粗线条(11)-细空白(0)-细线条(1)。
  2. 从空白区开始共113个模组,每个模组长0.33mm,条码符号长度为37.29mm。
  3. 中间码两侧的资料码编码规则是不同的,左侧为奇,右侧为偶。奇表示线条的个数为奇数;偶表示线条的个数为偶数。
  4. 起始码、终止码、中间码的线条高度长於数字码。

二、实现

    public ActionResult UPCA()
{
EncodingOptions options = new EncodingOptions();
options.PureBarcode = false;
options.GS1Format = false;
options.Width = ;
options.Height = ;
options.Margin = ; BarcodeWriter writer = new BarcodeWriter();
writer.Format = BarcodeFormat.UPC_A;
writer.Options = options; //如需设置图片为其它颜色,使用此段代码
//BitmapRenderer renderer = new BitmapRenderer();
//renderer.Foreground = Color.Black;
//renderer.Background = Color.White;
//writer.Renderer = renderer; Bitmap bmp = writer.Write("");
MemoryStream ms = new MemoryStream();
bmp.Save(ms, ImageFormat.Png);
ms.Flush();
ms.Position = ;
return File(ms, "application/x-png");
}

结果图片如下:

三、解码

点击查看

(zxing.net)一维码UPC A的简介、实现与解码的更多相关文章

  1. (zxing.net)一维码UPC E的简介、实现与解码

    UPC(Universal Product Code)码是最早大规模应用的条码,其特性是一种长度固定.连续性的条  码,目前主要在美国和加拿大使用,由于其应用范围广泛,故又被称万用条码. UPC码仅可 ...

  2. 一维码UPC E简介及其解码实现(zxing-cpp)

    UPC(Universal Product Code)码是最早大规模应用的条码,其特性是一种长度固定.连续性的条  码,目前主要在美国和加拿大使用,由于其应用范围广泛,故又被称万用条码. UPC码仅可 ...

  3. 一维码UPC A简介及其解码实现(zxing-cpp)

    UPC(Universal Product Code)码是最早大规模应用的条码,其特性是一种长度固定.连续性的条  码,目前主要在美国和加拿大使用,由于其应用范围广泛,故又被称万用条码. UPC码仅可 ...

  4. (zxing.net)一维码EAN 8的简介、实现与解码

    一.简介 一维码EAN 8:属于国际标准条码,由8个数字组成,属EAN的简易编码形式(EAN缩短码).当包装面积小于120平方公分以下无法使用标准码时,可以申请使用缩短码. 依结构的不同,EAN条码可 ...

  5. (zxing.net)一维码Code 128的简介、实现与解码

    一.简介 一维码Code 128:1981年推出,是一种长度可变.连续性的字母数字条码.与其他一维条码比较起来,相对较为复杂,支持的字元也相对较多,又有不同的编码方式可供交互运用,因此其应用弹性也较大 ...

  6. (zxing.net)一维码Code 93的简介、实现与解码

    一.简介 一维码Code 93: Code 93码与Code 39码的字符集相同,但93码的密度要比39码高,因而在面积不足的情况下,可以用93码代替39码.它没有自校验功能,为了确保数据安全性,采用 ...

  7. (zxing.net)一维码Code 39的简介、实现与解码

    一.简介 一维码Code 39:由于编制简单.能够对任意长度的数据进行编码.支持设备广泛等特性而被广泛采用. Code 39码特点: 能够对任意长度的数据进行编码,其局限在于印刷品的长度和条码阅读器的 ...

  8. (zxing.net)一维码EAN 13的简介、实现与解码

    一维码EAN 13:属于国际标准条码, 由13个数字组成,为EAN的标准编码型式(EAN标准码). 依结构的不同,EAN条码可区分为: EAN 13码: 由13个数字组成,为EAN的标准编码型式(EA ...

  9. 使用Zxing生成一维码和二维码

    首先引用zxing.dll 到项目中引用 using System; using System.Collections.Generic; using System.Drawing; using Sys ...

随机推荐

  1. 0908期 HTML Frameset框架和选择器

    frameset框架 frameset与body没法同时使用,frameset用来分割页面,frame在frameset用于引用其他网页 <frameset rows="100,*&q ...

  2. redis for windows之nosql还需要入门?

    RT:nosql给很多人的感觉就是上手特别快,本文也是一篇入门级的,哎~~ 又写了一篇没有卵用的博文,姑且把它当作一篇文档吧,还是没有发布/订阅.事件...等介绍的一篇残缺文档,幸好废话不是很多,凑合 ...

  3. Getting Started(入门)

    欢迎阅读专门针对android开发者的培训课程,在这一系列的课程中,描述了如何通过我们的示例代码来完成特定的任务和功能,这些代码可以灵活地应用到你的应用程序中. 课程被分成了几部分, 第一部分,入门, ...

  4. 用dwz时, 由于粗心产生的一些问题(记录方便自己查阅)

    在打开"添加" 或 "修改" , 用dialog弹出时 , 点击提交的时候, dialog 不能关闭, 也不能刷新 解决办法: 注意form标签, onsubm ...

  5. 跟我学算法-PCA(降维)基本原理推导

    Pca首先 1.对数据进行去均值 2.构造一个基本的协方差矩阵1/m(X)*X^T 3对协方差矩阵进行变化,得到对角化矩阵,即对角化上有数值,其他位置上的数为0(协方差为0),即求特征值和特征向量的过 ...

  6. excel拼接数据宏

    将sheet2的A2 和 G2   加上  sheet5的A2和B2合一起生成新的sheet--就是将两个sheet的指定列前后拼接一起作为一个新的sheet Sub addwork() Sheets ...

  7. 13 MySQL--存储过程

    1.存储过程的介绍 对于存储过程,可以接收参数,其参数有三类: in 仅用于传入参数用 out 仅用于返回值用 inout 既可以传入又可以当作返回值 存储过程包含了一系列可执行的sql语句,存储过程 ...

  8. eclipse cut copy paste plugin

    The Cut Copy Paste Plus plug-in enhances the standard Cut, Copy and Paste commands in Eclipse IDE. W ...

  9. 新手C#面向对象的学习2018.08.06

    class Person//声明一个Person类 { //类中的声明与Main中不同,类中声明的是字段而不是函数. public string gender; public string name= ...

  10. 第6章 数组、指针与字符串(一)基于范围的for循环