条形码简单,方便印刷,因此在各个领域得到了广泛的应用。我们自己的项目里也可以将一些特定的数据以条形码的方式来展示和应用,实现一码走天下。那么如何在C#,.Net平台代码里生成条形码呢?答案是使用SharpBarcode!
SharpBarcode是C#快速高效、准确的条形码,线性条码,QR二维码的读取和生成类库。接口调用简单,文档齐全。
初识SharpBarcode
您可以点击下面的链接了解更多信息:
1、SharpBarcode简介
2、一张图看懂SharpBarcode
生成条形码
从上面的两篇文章中,相信您已经大概了解了该类库。那么如何实现生成条形码呢?对!就是BarcodeWriteEngine的静态方法!
该类可以同时生成条形码和QR二维码,生成条形码的方法就是CreateBarcode及其重载方法。
设置授权码
在您调用SharpBarcode的方法之前,必须先设置授权,如果是试用版,直接传入Test即可。
//设置授权码
KeyMgr.SetKey("Test");
调用BarcodeWriteEngine的静态方法CreateBarcode
SharpBarcode支持多种编码格式类型的条形码,每一种条形码都有自己的字符集,您在生成该类型的条形码时,必须确保您要生成的数据是符合该类型的各项要求的,比如长度、字符集等。
这里演示将字符串生成一个条形码。同时SharpBarcode支持对生成的条形码进行样式调整,比如背景色、条码的颜色、添加边距、设置宽高大小等等。
也支持对生成的结果进行多种格式的保存和导出。比如保存为Bitmap类对象,或者是jpg、png、bmp、tiff、gif、pdf等格式文件,或者DataURL,html等格式。这些都是通过GeneratedBarcode类的方法来实现的。
GeneratedBarcode类是生成条形码和二维码的一个核心类,BarcodeWriteEngine的任何一个方法,无论是生成的条形码,还是QR二维码,都是返回GeneratedBarcode类型。您可以通过GeneratedBarcode类的方法调整后,进行导出和保存。
if(textBox1.Text.Trim() == "")
{
MessageBox.Show("您没有填写内容,请填写符合您选择的条码格式要求的内容!");
return;
}
//开始生成,主要就是传入生成条形码时以哪种编码格式类型,比如code128,以及要写入条形码的数据
GeneratedBarcode result = BarcodeWriteEngine.CreateBarcode(textBox1.Text.Trim(), (BarcodeEncoding)Enum.Parse(typeof(BarcodeEncoding), comboBox1.Items[comboBox1.SelectedIndex].ToString()));
//设置大小
GeneratedBarcode resultSized = result.ResizeTo(result.Width, 200);
//显示
pictureBox2.Image = resultSized.ToBitmap();
MessageBox.Show("下面开始为生成的图片添加注释文字");
GeneratedBarcode resultAfter = resultSized.AddBarcodeValueTextAboveBarcode(new Font("宋体", 14), Color.Black);
pictureBox2.Image = resultAfter.ToBitmap();
MessageBox.Show("下面开始保存为jpg图片");
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
resultAfter.SaveAsJpeg(saveFileDialog1.FileName);
MessageBox.Show("已保存!");
}
程序运行结果如下图: