利用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进行存档.那 ...
随机推荐
- jQueryEasyUI创建菜单主页
function addTab(title,path){ funcTab.tabs('add',{ title: title, fit:true, href:'${ctx}/login/forword ...
- Android之多媒体扫描过程
转自:http://blog.csdn.net/yan8024/article/details/6620359下面是系统图 MediaScannerReceiver会在任何的ACTION_B ...
- 基于libhid/libusb进行开发
操作环境:ubuntu,基于libhid/libusb进行开发 libusb介绍: libusb 设计了一系列的外部API 为应用程序所调用,通过这些API应用程序可以操作硬件,从libusb的源 ...
- easyui datatimebox 取值和赋值
1.取值 var time = $('.easyui-datetimebox').datetimebox('getValue'); 全部代码如下: <script type="text ...
- 在mac上命令行里面如何打开文本编辑器?
在mac上命令行里面如何打开文本编辑器? 在linux命令行terminal上使用gedit直接就可以打开文本文件 那么在mac上面如何操作呢? 使用:open -a TextEdit setti ...
- C语言:通过指针对字符串进行拼接
// // main.c // Pointer_stringcat // // Created by ma c on 15/8/2. // Copyright (c) 2015年 bjsxt. ...
- C语言条件编译
使用与平台有关的C语言函数,可能会使得程序不具有可移植性.比如Socket编程.多线程编程等是与平台有关的. 若想将程序做成平台无关的就需要用到与平台相关的条件编译. 下面转自:http://blog ...
- [leetcode]Binary Tree Preorder Traversal @ Python
原题地址:http://oj.leetcode.com/problems/binary-tree-preorder-traversal/ 题意:这题用递归比较简单.应该考察的是使用非递归实现二叉树的先 ...
- libFM 简介
原文:https://eachcloudcn.blob.core.chinacloudapi.cn/clips/XOI1W.htm libFM全称为Factorization Machine Libr ...
- [Backbone]6. Collections.
Define a collection: var AppointmentList = Backbone.Collection.extend({model: Appointment}); RESET t ...