C#使用ZXing.Net实现生成二维码和条码

 更新时间:2023年12月30日 08:32:36   作者:rjcql  
ZXing用Java实现的多种格式的一维二维条码图像处理库,而ZXing.Net是其.Net版本的实现,下面我们就来看看 C#如何使用ZXing.Net实现生成二维码和条码吧

写在前面

条码生成是一个经常需要处理的功能,本文介绍一个条码处理类库,ZXing用Java实现的多种格式的一维二维条码图像处理库,而ZXing.Net是其.Net版本的实现。

在WinForm下使用该类库需要从NuGet安装两个组件:

ZXing.Net

ZXing.Net.Bindings.Windows.Compatibility

代码实现

using ZXing;
using ZXing.Common;
using ZXing.OneD;
using ZXing.QrCode;
using ZXing.Windows.Compatibility;
 
namespace QrCodeGen
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            var writer = new BarcodeWriter<Bitmap>();
            writer.Format = BarcodeFormat.QR_CODE;
            QrCodeEncodingOptions options = new QrCodeEncodingOptions()
            {
                DisableECI = true,       //设置内容编码
                CharacterSet = "UTF-8",  //设置二维码的宽度和高度
                Width = 200,
                Height = 200,
                Margin = 1               //设置二维码的边距,单位不是固定像素
            };
            var render = new AlternateBitmapRenderer();
            writer.Renderer = render;
 
            writer.Options = options;
            Bitmap map = writer.Write("Hello world");
            pictureBox1.Image = map;
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            var w = new EAN13Writer();
            var render = new AlternateBitmapRenderer();
            render.TextFont = new Font("Segoe UI", 25);
            var content = "1234567890123";
            // EAN-13 商品条码的标准尺寸是 37.29mm x 26.26 mm ,按照 300 DPI 换算像素大小是 440 x 310
            var m = w.encode(content, BarcodeFormat.EAN_13, 440, 310);
            //渲染得到的图片
            var bmp = render.Render(m, BarcodeFormat.EAN_13, content, new EncodingOptions { Width = 440, Height = 310 });
            pictureBox2.Image = bmp;
        }
    }
}

 EAN-13商品条码是表示EAN/UCC-13商品标识代码的条码符号,由左侧空白区、起始符、左侧数据符、中间分隔符、右侧数据符、校验符、终止符、右侧空白区及供人识别字符组成。

调用示例

到此这篇关于C#使用ZXing.Net实现生成二维码和条码的文章就介绍到这了,更多相关C#生成二维码条码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#基于正则表达式抓取a标签链接和innerhtml的方法

    C#基于正则表达式抓取a标签链接和innerhtml的方法

    这篇文章主要介绍了C#基于正则表达式抓取a标签链接和innerhtml的方法,结合实例形式分析了C#使用正则表达式进行页面元素的匹配与抓取相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • C#/VB.NET实现在Word中插入或删除脚注

    C#/VB.NET实现在Word中插入或删除脚注

    脚注,是可以附在文章页面的最底端的,对某些东西加以说明,印在书页下端的注文。这篇文章将为您展示如何通过C#/VB.NET代码,以编程方式在Word中插入或删除脚注,需要的可以参考一下
    2023-03-03
  • C# GDI+实现时钟表盘

    C# GDI+实现时钟表盘

    这篇文章主要为大家详细介绍了C# GDI+实现时钟表盘,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • c#求范围内素数的示例分享(c#求素数)

    c#求范围内素数的示例分享(c#求素数)

    问题是判断101-200之间有多少个素数,并输出所有素数。下面是使用C#解决这个问题的方法 ,需要的朋友可以参考下
    2014-03-03
  • C# 调用WebApi的实现

    C# 调用WebApi的实现

    这篇文章主要介绍了C# 调用WebApi的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • DOTNETBAR制作圆角窗体和圆角控件代码实例

    DOTNETBAR制作圆角窗体和圆角控件代码实例

    这篇文章主要介绍了DOTNETBAR制作圆角窗体和圆角控件的方法,大家参考使用吧
    2013-11-11
  • C#中正则表达式的3种匹配模式

    C#中正则表达式的3种匹配模式

    本文主要介绍在C#中正则匹配的三种模式:单行模式(Singleline)、多行模式(Multiline)与忽略大小写(IgnoreCase),希望能帮到大家。
    2016-05-05
  • C# 元组和值元组的具体使用

    C# 元组和值元组的具体使用

    这篇文章主要介绍了C# 元组和值元组的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • C#遍历操作系统下所有驱动器的方法

    C#遍历操作系统下所有驱动器的方法

    这篇文章主要介绍了C#遍历操作系统下所有驱动器的方法,涉及C#中DriveInfo类GetDrivers方法的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • 浅谈c#中const与readonly区别

    浅谈c#中const与readonly区别

    C#引入了readonly修饰符来表示只读域,const来表示不变常量。顾名思义对只读域不能进行写操作,不变常量不能被修改,这两者到底有什么区别呢?
    2015-06-06

最新评论