利用Aspose.BarCode生成条码
生成条码有很多控件,大部分好的控件,做出来的条码精确清晰,但是往往该部分的控件费用都很高,这里推荐大家使用6.0版本的破解版,可以生成无水印,下方也可以不显示文字。
1、下图是 onbarcode 控件,的费用图,取自官网。

2、下图是 Aspose.BarCode for .NET 的官网费用

总结:这些控件可以使用,因为需要付费。给免费使用的,条码中夹杂水印,可见,好的控件都是比较难获取的。
今天使用 Aspose.BarCode for .NET 6.0 来生成各种的二维码(这里只介绍PDF417码生成,其他更简单且类似)
下图是最简单的返回Bitmap格式的方法,可以调用:
public static Bitmap CreateBitmap()
{
// ExStart:CreatePDF417Barcode
// The path to the documents directory.
// string dataDir = RunExamples.GetDataDir_ManageBarCodes(); //// Instantiate BarCodeBuilder object
//BarCodeBuilder barCodeBuilder = new BarCodeBuilder();
//barCodeBuilder.CodeText = "ffffffffffffffffffffffi"; // Set the Code text for the barcode
//barCodeBuilder.SymbologyType = Symbology.Code128; // Set the SymbologyType for the barcode BarCodeBuilder barCodeBuilder = new BarCodeBuilder("ffffffffffffffffffffffi", Symbology.Code128); //上三行,和该行效果相同 return barCodeBuilder.GenerateBarCodeImage();
// Save file to disk
//barCodeBuilder.Save(dataDir + "pdf417-barcode_out.jpg", BarCodeImageFormat.Jpeg); }
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
实际中,我们创建一个项目,通过一个按钮,在 pictureBox1 中显示二维码,代码如下
private void button1_Click(object sender, EventArgs e)
{
// Instantiate barcode object
BarCodeBuilder barCodeBuilder = new BarCodeBuilder(); // Set Barcode Symbology
barCodeBuilder.SymbologyType = Symbology.Pdf417;
barCodeBuilder.CodeTextSpace = ; //二维码下方文字与图形的距离,我们也可以不要文字
// set Pdf417 Error correction level
barCodeBuilder.Pdf417ErrorLevel = Pdf417ErrorLevel.Level8; // Set Pdf417 Compaction Mode to Text
barCodeBuilder.Pdf417CompactionMode = Pdf417CompactionMode.Text; // set CodeText for barcode
barCodeBuilder.CodeText = "1234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C01234512345678901234567890678E9C0"; //带下方显示文字 //this.pictureBox1.Width = (int)barCodeBuilder.ImageWidth + 100; //显示大小,长宽
//this.pictureBox1.Height = (int)barCodeBuilder.ImageHeight; //barCodeBuilder.Save(@"C:\AA.bmp", BarCodeImageFormat.Bmp); //以图片形式生成,保存本地
this.pictureBox1.Image = barCodeBuilder.GenerateBarCodeImage(); // GenerateBarCodeImage 创建图片,下方显示文字信息 //this.pictureBox1.Image = barCodeBuilder.GetOnlyBarCodeImage(); //不显示下方文字,仅仅显示图片,对于非破解版,该步不行
}
同样的,也可以利用到PrintDocument之中,我们将Bitmap以图片格式进行压缩或者放大显示,如下:
// Instantiate barcode object
BarCodeBuilder barCodeBuilder = new BarCodeBuilder();
// Set Barcode Symbology
barCodeBuilder.SymbologyType = Symbology.Pdf417;
barCodeBuilder.CodeTextSpace = ; //文字与图形的距离 // set Pdf417 Error correction level
barCodeBuilder.Pdf417ErrorLevel = Pdf417ErrorLevel.Level8; //校验等级
// Set Pdf417 Compaction Mode to Text
barCodeBuilder.Pdf417CompactionMode = Pdf417CompactionMode.Text;
// set CodeText for barcode
barCodeBuilder.CodeText = pdf417_text; ///barCodeBuilder.Save(@"C:\AA.png", BarCodeImageFormat.Png); //以图片形式生成
//Bitmap bitmap = barCodeBuilder.GenerateBarCodeImage(); //获取Bitmap图片格式, 下方带文字,对于小型二维码是很好的显示
Bitmap bitmap = barCodeBuilder.GetOnlyBarCodeImage(); //获取Bitmap图片格式, barCodeBuilder.GetOnlyBarCodeImage
e.Graphics.DrawImage(bitmap, , , , ); //将二维码图片 打印出来,缩放
结构图:

测试结果(其他格式条码类似):

分享共进步,谢谢阅读。
利用Aspose.BarCode生成条码的更多相关文章
- 利用FastReport直接生成条码
procedure TForm1.Button1Click(Sender: TObject); var x:TfrxbarCodeView; begin x:=TfrxbarCodeView.Crea ...
- Asp.net MVC 利用(aspose+pdfobject.js) 实现在线预览word、excel、ppt、pdf文件
在线预览word.excel.ppt利用aspose动态生成html 主要代码 private bool OfficeDocumentToHtml(string sourceDoc, string s ...
- C# 利用BarcodeLib.dll生成条形码(一维,zxing,QrCodeNet/dll二维码)
原文:http://blog.csdn.net/kongwei521/article/details/17588825 首先效果: 一.下载BarcodeLib.dll 下载地址 :http://do ...
- C# 利用BarcodeLib.dll生成条形码
首先效果: 1:首先下载BarcodeLib.dll 下载地址 http://pan.baidu.com/share/link?shareid=2590968386&uk=2148890391 ...
- 利用Aspose.Word控件和Aspose.Cell控件,实现Word文档和Excel文档的模板化导出
我们知道,一般都导出的Word文档或者Excel文档,基本上分为两类,一类是动态生成全部文档的内容方式,一种是基于固定模板化的内容输出,后者在很多场合用的比较多,这也是企业报表规范化的一个体现. 我的 ...
- 利用google api生成二维码名片
利用google api生成二维码名片 二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码.堆叠式/行排式二维条码形态上是由多行短截的一维条码堆叠而成:矩阵式二维条码以矩阵的形式组成,在矩 ...
- 【.Net 学习系列】-- 利用Aspose转换Excel为PDF文件
功能: 从数据库中查询出数据 利用Aspose.cell + Excel模板绑定数据源生成Excel文件 通过Aspose.pdf + 生成好的Excel生成PDF文件 实现: 查询数据,根据Exce ...
- 基于Asp.Net Core,利用ZXing来生成二维码的一般流程
本文主要介绍如何在.net环境下,基于Asp.Net Core,利用ZXing来生成二维码的一般操作.对二维码工作原理了解,详情见:https://blog.csdn.net/weixin_36191 ...
- 利用Java动态生成 PDF 文档
利用Java动态生成 PDF 文档,则需要开源的API.首先我们先想象需求,在企业应用中,客户会提出一些复杂的需求,比如会针对具体的业务,构建比较典型的具备文档性质的内容,一般会导出PDF进行存档.那 ...
随机推荐
- 使用开源库 TWMessageBarManager 展示系统级别的通知
TWMessageBarManager 简单翻译 https://github.com/terryworona/TWMessageBarManager An iOS manager for prese ...
- easyui input设置为disabled提交后获取不到属性值
在做网站管理后台的用户修改功能时,由于当前用户修改个人信息时规定用户名不能修改,故使用了input标签的disabled属性,但是在提交数据后却发现用户名显示为空了.后 来一查才知道input设置为d ...
- Hashing图像检索源码及数据库总结
下面的这份哈希算法小结来源于本周的周报,原本并没有打算要贴出来的,不过,考虑到这些资源属于关注利用哈希算法进行大规模图像搜索的各位看官应该很有用,所以好东西本小子就不私藏了.本资源汇总最主要的收录原则 ...
- ASP.NET—015:ASP.NET中无刷新页面实现
原文作者:杨友山 原文地址:http://blog.csdn.net/yysyangyangyangshan/article/details/39679823 前面也说过在asp.net中前后前交互的 ...
- 数学图形之克莱因瓶(klein bottle)
克莱因瓶是一种内外两面在同一个曲面上的图形. 在数学领域中,克莱因瓶(德语:Kleinsche Flasche)是指一种无定向性的平面,比如二维平面,就没有“内部”和“外部”之分.克莱因瓶最初的概念提 ...
- 判断大小端的方法(java和c++)
首先我们给出大小端的定义: 小端:较高的有效字节存放在较高的的存储器地址,较低的有效字节存放在较低的存储器地址. 大端:较高的有效字节存放在较低的存储器地址,较低的有效字节存放在较高的存储器地址. 将 ...
- Iterator 迭代器模式 MD
迭代器模式 简介 Iterator模式是行为模式之一,它把对容器中包含的内部对象的访问[委让]给外部类,使用Iterator按顺序进行遍历访问. 在程序设计中,经常有这种情况:需要从大量的数据集合中一 ...
- javascript制作公式编辑器,函数编辑器和图形绘制
自己是电子信息方向的,因此总是需要处理大量的电路实验.电路数据和电路仿真处理,每次处理数据时候还需要同样的数据很多遍, 又需要关于电路的频率响应和时域响应情况,所以一直有做一个这样公式编辑器的打算了. ...
- 理解JavaScript里this关键字
1.全局代码中的this:始终指向window 2.函数代码中的this: }; var bar = { x: , test: function () { alert(this === bar); a ...
- 批量合并GDB
在实际操作中,经常对数据库文件进行合并.裁切等.如果遇到gdb比较多,要素层比较多,而且还存在数据集.虽然ArcGIS中的批量处理的功能,但填写参数过程也比较麻烦,如果一次性处理过多,程序容易停止工作 ...