当前位置: 首页 > news >正文

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 310var 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商品标识代码的条码符号,由左侧空白区、起始符、左侧数据符、中间分隔符、右侧数据符、校验符、终止符、右侧空白区及供人识别字符组成。

调用示例

http://www.lryc.cn/news/269440.html

相关文章:

  • Windows系统配置pytorch环境,Jupyter notebook编辑器安装使用(深度学习本地篇)
  • 详解“量子极限下运行的光学神经网络”——相干伊辛机
  • uniapp通过蓝牙传输数据 (安卓)
  • LT8612UX-HDMI2.0 to HDMI2.0 and VGA Converter with Audio,支持三通道视频DAC
  • python gui programming cook,python gui视频教程
  • 亚马逊bsr排名的影响因素,如何提高BSR排名?-站斧浏览器
  • K8s-安全机制
  • GPT-3: Language Models are Few-Shot Learners
  • Qt Quick 用cmake怎么玩子项目
  • 大数据学习(29)-Spark Shuffle
  • archiver error. Connect internal only, until freed.
  • 鸿蒙HarmonyOS-图表应用
  • elasticsearch 笔记三:查询建议介绍、Suggester、自动完成
  • 【hyperledger-fabric】将智能合约部署到通道
  • nginx设置跨域访问
  • Go语言学习第二天
  • 阿里云OpenSearch-LLM智能问答故障的一天
  • 城市分站优化系统源码:提升百度关键排名 附带完整的搭建教程
  • 【华为OD题库-107】编码能力提升计划-java
  • 使用pytorch进行图像预处理的常用方法的详细解释
  • 天线根据什么进行分类
  • JavaScript:正则表达式
  • 【Linux】深挖进程地址空间
  • SVM(支持向量机)-机器学习
  • 解决生成的insert语句内有单引号的情况
  • 【Linux 程序】1. 程序构建
  • GLTF 编辑器实现逼真3D动物毛发效果
  • 【Go语言入门:Go语言的方法,函数,接口】
  • vue-cli3/webpack打包时去掉console.log调试信息
  • 企业品牌推广在国外媒体投放的意义和作用何在?