• (zxing.net)一维码MSI的简介、实现与解码


    一、简介

    MSI/Plessey 条码(也被称为 MSI 或 Modified Plessey)是一款数字条码,多用于超市、存储用的仓库和其他贮藏室的货架。货架上的条码可以告知货架上的产品、应放数量和其他相关信息。条码可以为任意长度,但是通常固定为适用于特定应用的长度。

    MSI/Plessey 条码为二进制格式,黑色条纹表示为“1”,空格表示为“0”。0 到 9 的所有数字在条码中都表示为二进制。条码开头是个“卫字符”,表示条码的起点,后面是已编码数据。接下来是个可选的校验位。MSI/Plessey 支持多种类型的校验位,最常用的是 Mod-10。这些数位会以特定方式相加并获得单数位结果。如果结果和校验位相符,说明条码正确。校验位后面是表示条码结束的另一个卫字符。

    MSI/Plessey 条码可以为任意长度,因此有可能用于编码大量信息。

    二、实现

        public ActionResult MSI()
        {
            EncodingOptions options = new EncodingOptions();
            options.PureBarcode = false;
            options.GS1Format = false;
            options.Width = 110;
            options.Height = 75;
            options.Margin = 0;
    
            BarcodeWriter writer = new BarcodeWriter();
            writer.Format = BarcodeFormat.MSI;
            writer.Options = options;
    
            //如需改变图片颜色,加上此段代码
            //BitmapRenderer renderer = new BitmapRenderer();
            //renderer.Foreground = Color.Blue; //前景色
            //renderer.Background = Color.Black; //背景色
            //writer.Renderer = renderer;
    
            Bitmap bmp = writer.Write("00123457");
            MemoryStream ms = new MemoryStream();
            bmp.Save(ms, ImageFormat.Png);
            ms.Flush();
            ms.Position = 0;
            return File(ms, "application/x-png");
        }

    结果图片如下:

           

    三、解码

    点击查看

  • 相关阅读:
    内存分析工具MAT(Memory Analyzer Tool)从安装到使用
    java 技术分享
    FreeMarker三宗罪之优缺点
    100+经典Java面试题及答案解析
    java中使用SimpleDateFormat实现字符串和日期的相互转换
    SQLSERVER还原数据库失败:错误: 3154
    值不能为null.参数名: viewInfo,如何解决
    java中判断Object对象类型
    ajax图片上传(asp.net +jquery+ashx)
    ElasticSearch 入门介绍
  • 原文地址:https://www.cnblogs.com/weiweixiang/p/10102285.html
Copyright © 2020-2023  润新知