C#条码设计-CODE93

2023-11-15

   由于最近一段时间在忙考试,一直也没有时间接着写,现在考完试了,慢慢将其他的编码规则发上来,希望对各位能有所帮助!

今天要跟大家分享的CODE93编码规则.

一.了解一下CODE93的发展:     

1.Code 93於1982年,基於code 39之上而設計.     

2.Code93比Code39能夠編碼更大的字符集,並且擁有更高的數據容量.     

3.Code 93設計來編碼字母和數字混合信息.     

4.Code 93需要兩個校驗碼.

二.CODE93的组成部分     

1.所能表示的数据范围:                   

字母:A-Z                    

数据:0-9                    

符号:空格、.  、%  、 $  、+  、–  、/                

控制码: $  、+  、–  、/                

起讫码: START : "101011110";  STOP  = "1010111101"

三.CODE93的特点     

 1.可用控制码与其它与其他字母或符号组合可变成FULL ASSIC II字母     

 2.有二个检查码”C”和”K”,扫码器读取时并不输出,只在扫码器内部检查.     

3.检验码的计算方法:                

 a.先检查出资料对应的码值                

 b.检查码C从资料的最右边一位开始,用1-20的顺序排列,若超过20位,则从头开始                

c.检查码K从资料的C位开始,用1-15的顺序排列,若超过15位则从头开始.

1*3+2*9+3*38+4*14+5*13+6*24+7*12=484 C=484÷47=14 则C=14=E(对应值) K的值的计算同C

四.条码的基本组成

五.程序编码

CODE93码字符集码表

 

            code0["0"] = "100010100";             code0["1"] = "101001000";             code0["2"] = "101000100";             code0["3"] = "101000010";             code0["4"] = "100101000";             code0["5"] = "100100100";             code0["6"] = "100100010";             code0["7"] = "101010000";             code0["8"] = "100010010";             code0["9"] = "100001010";             code0["A"] = "110101000";             code0["B"] = "110100100";             code0["C"] = "110100010";             code0["D"] = "110010100";             code0["E"] = "110010010";             code0["F"] = "110001010";             code0["G"] = "101101000";             code0["H"] = "101100100";             code0["I"] = "101100010";             code0["J"] = "100110100";             code0["K"] = "100011010";             code0["L"] = "101011000";             code0["M"] = "101001100";             code0["N"] = "101000110";             code0["O"] = "100101100";             code0["P"] = "100010110";             code0["Q"] = "110110100";             code0["R"] = "110110010";             code0["S"] = "110101100";             code0["T"] = "110100110";             code0["U"] = "110010110";             code0["V"] = "110011010";             code0["W"] = "101101100";             code0["X"] = "101100110";             code0["Y"] = "100110110";             code0["Z"] = "100111010";             code0["-"] = "100101110";             code0["."] = "111010100";             code0[" "] = "111010010";             code0["___FCKpd___1quot;] = "111001010";             code0["/"] = "101101110";             code0["+"] = "101101110";             code0["%"] = "110101110";             code0["SHIFT1"] = "100100110";             code0["SHIFT2"] = "111011010";             code0["SHIFT3"] = "111010110";             code0["SHIFT4"] = "100110010";             code0["START"] = "101011110";             code0["STOP"] = "1010111101";

CODE93编码

       #region Encode barcode string

        /// <summary>

        /// 对条码的值进行编码

         /// </summary>

        private void EncodeBarcodeValue()

        {

            try

            {

                String str = code.ToUpper();

                strLength = str.Length;               //起始码

                encodedString = code0["START"];	       //与码表值进行对应

                for (int i = 0; i < strLength; i++)

                {

                    encodedString += code0[str[i].ToString()];

                }               //计算出CK的值

                encodedString += GetCheckC_KValue();            
//结束码

                encodedString += code0["STOP"];

            }

            catch

            {

                throw new Exception("条码的值错误请检查!");

            }



        }

        #endregion

经过编码后encodedString里所对应的内容就是条码资料所对应的编码,接下下就是用做图函数,将一个个的画出来即可,这样一个CODE39码就完成了程序运行结果 http://download.csdn.net/source/607627

可以转载,转载请注明出处

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#条码设计-CODE93 的相关文章

随机推荐

  • 中断、信号、系统调用

    1 中断的分类 中断程序的方法可以分为硬件中断和软件中断 硬件中断是硬件自动触发的 包括中断和异常 比如 中断 通过中断控制器给CPU的INTR引脚发送信号 如按下键盘 会给CPU一个0x21中断号 异常 CPU执行某条指令发生异常 会自己
  • tr td分合并单元格

    table border 1 width 200 tr td ss td tr tr td width 25 td td width 25 td tr table
  • Spark性能优化:数据倾斜调优

    前言 继 Spark性能优化 开发调优篇 和 Spark性能优化 资源调优篇 讲解了每个Spark开发人员都必须熟知的开发调优与资源调优之后 本文作为 Spark性能优化指南 的高级篇 将深入分析数据倾斜调优与shuffle调优 以解决更加
  • 设计补偿器网络以改善开关频率响应

    直流开关电压转换器 或 开关调节器 控制回路的特点是频率响应 频率响应影响开关调节器的反应时间对瞬态变化 精度和稳定性的影响 并在输入电压 负载和工作周期变化的情况下 如何保持设定的电压输出 工程师可以通过增加补偿器网络来改善开关调节器的频
  • Linux在云服务器上安装JDK

    官网地址下载 Java Downloads Oracle 将下载好的jdk通过Xftp传输到服务器上去 创建一个文件夹用于区分 在home文件夹下创建一个属于自己的文件夹 将需要的文件传输过去 也可以直接在 usr local 下配置 cd
  • win7电脑最新版微信卡死问题的解决

    最近一段时间无论单位还是家里事情都比较多 导致没有时间学习和写文 排名蹭蹭地往下掉 刚好遇到一个win7版微信卡死的问题 在网上查了下 找到了win10相关的可以参考的解决办法 确实有效 在此介绍一下 一 问题现象 当最小化win7托盘的微
  • linux环境安装php fileinfo扩展

    linux环境安装php fileinfo扩展 windows环境安装扩展比较简单 只需要把dll拷贝到扩展目录 修改php ini中相应的扩展就好了 下面来介绍一下linux环境下的php扩展安装 以centos6 5和php7 1为例
  • C++ OpenCV制作九宫格拼图游戏

    学更好的别人 做更好的自己 微卡智享 本文长度为2498字 预计阅读7分钟 前言 上一篇 C OpenCV生成九宫格图像 介绍了如何将图片分割城九宫格 然后重新打乱了顺序显示出来 本篇就来说一下怎么制作一个九宫格的拼图游戏 项目的重新创建了
  • JAVA是什么意思

    JAVA的意思是计算机的编程语言 Java通过面向对象的编程语言 它不仅吸收了C 语言的优点 而且摒弃了C 中难于理解的多继承和指针的概念 具有简单性 功能强大 分布式 健壮性 安全性 平台独立与可移植性 多线程及动态性的特点 Java语言
  • 第二十一课,几何着色器(基础篇)

    几何着色器的作用 输入 输入类型 从顶点着色器接收下列任何一个图元值 类型 数组大小 points 绘制GL POINTS图元时 1 lines 绘制GL LINES或GL LINE STRIP时 2 lines adjacency GL
  • seaborn学习笔记(二):散点图、线图

    html font family sans serif ms text size adjust 100 webkit text size adjust 100 body margin 0 article aside details figc
  • Spring Cloud Gateway替代zuul作为API网关(一)

    本文简要介绍如何使用Spring Cloud Gateway 作为API 网关 不是使用zuul作为网关 关于Spring Cloud Gateway和zuul的性能比较本文不再赘述 基本可以肯定Spring Cloud Finchley版
  • matlab 中.*和*有什么区别

    和 的区别 在进行数之间的运算时 和 是没有区别的 都是表示普通的乘法运算 例 m 2 n 3 m n 6 m n 6 在进行矩阵之间的运算时 和 的意义就有所不同了 假设a b表示两个矩阵 a b表示矩阵a与矩阵b进行矩阵相乘 a b表示
  • 微软服务器dda,实战DDA硬件直通:Hyper-V虚拟机直通NVMe固态硬盘

    虚拟机可以把一台电脑模拟成许多台完整的系统 并在他们当中安装运行各自的操作系统和软件应用 在使用虚拟机的时候我们既可以利用NVMe固态硬盘的性能 同时承载多个虚拟机的读写请求 也可以让其中某个需要重负载读写的虚拟机独享它的性能 这时就需要用
  • VsCode搭建Windows C++ (MSVC)开发环境

    由于最近的学习需求 折腾起了vscode 毕竟是跨平台 对以后项目的拓展也很方便 至于为什么不用mingw tdm gcc一类 主要因为毕竟是Windows平台 使用自家的MSVC开发环境一来可以放心 少出BUG 二来能够增强Windows
  • kmeans算法原理以及实践操作

    原文 http www cnblogs com dudumiaomiao p 5839905 html kmeans算法原理以及实践操作 多种k值确定以及如何选取初始点方法 kmeans一般在数据分析前期使用 选取适当的k 将数据聚类后 然
  • springboot搭建文件预览解决方案,支持目前主流格式office文件,txt文件,png,jpg等图片以及压缩文件的在线预览功能

    应用场景及实现思路 应用场景 给定一个网址 输入网址后立即显示预览文件 实现思路 1 将文件下载到本地 存储到某个指定目录 2 进行文件转换 此处是重点 3 进行文件展示 实现过程 首先 搭建一个springboot项目 搭建完毕后项目结构
  • ovsdb <10> Ops-cli结合ovsdb部分流程及接口分析

    4 6Ops cli结合ovsdb部分流程及接口分析 Ops中对于ovsdb的应用主要是基于上述的ovsdb的简单用法上的一个扩展和函数封装 现在就其与之前不同的地方做补充说明并就各个函数的使用做相应的说明 根据前面的ovsdb的数据结构描
  • 素数表

    2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 1
  • C#条码设计-CODE93

    由于最近一段时间在忙考试 一直也没有时间接着写 现在考完试了 慢慢将其他的编码规则发上来 希望对各位能有所帮助 今天要跟大家分享的CODE93编码规则 一 了解一下CODE93的发展 1 Code 93於1982年 基於code 39之上而