CSharp生成二维条码,网络上有许多生成工具,尽尽限于按图片大小生成,模块大小无法自己控制。特别生成PDF417这样层排式二维码,无法用户自定义外形、长宽比例和模块大小,往往受制图形大小。
开发DEMO下载:点击打开链接
我们根据多年经验,总结二维条码生成的要求,形成根据用户自定义方式生成各种二维条码。
接口:
Ø 命名空间引用:
using FzBozc;
usingFzBozc.Common;
Ø 接口调用:
var writer =new BarcodeWriter
{
Format = fmtBarCode,
Options = (EncodingOptions)options
};
pictBar.Image =writer.Write(TB_Info.Text);
注:options为条码编码参数对象
一、公共参数设置
Ø 参数类型:
EncodingOptions options
EncodingOptions options
1. 字符集
编码字符集:stringCharacterSet
条码编码内容采用的字符集。
字符集类型:"UTF-8","GB2312","ASCII","GB18030"
设置方式:options.CharacterSet="UTF-8";
参数默认为:"UTF-8"编码方式
2.输出图像
图像宽度:int Width
条码图像区域宽度:(单位:像素),
若宽度>0,条码自动填充图像区域,条码模块放大设置将失效
设置方式:options. Width=200;
参数默认为:0
图像高度:int Height
条码图像区域高度:(单位:像素),
若宽度>0,条码自动填充图像区域,条码模块放大设置将失效
设置方式:options. Height =200;
参数默认为:0
3. 条码周围留空:int Margin
条码图像周围留空(单位:模块)
设置方式:options. Margin=4;
参数默认为:4
二、PDF417条码参数设置
参数类型:
PDF417EncodingOptionsoptions
1. 条码形状:
高宽比例: StringAspect
取值范围:"auto","1:1","1:2","1:3","1:4","1:5","1:6","1:7","1:8”
条码外形高度与宽度¨的比例,auto_自动匹配
设置方式:options. Aspect=“1:4”;
参数默认为:”auto”
行数指定:int Rows
条码指定数据区的行数,0表未指定
若指定行数>0,条码高宽比例设置将失效。
设置方式:options. Rows =0;
参数默认为:0
列数指定:int Cols
条码指定数据区的列数,0表未指定
若指定列数>0,条码高宽比例设置将失效。
设置方式:options. Cols =0;
参数默认为:0
是否截短形:bool Compact
该值为atrue,表示生成¦截短形条码(省略右边指示符),否则是正常条码
设置方式:options. Compact=true;
参数默认为:false
2. 数据纠错
纠错级别: PDF417ErrorLevel ErrorCorrection
条码数据纠错级别越高纠错能力越强,纠错码字=2^(k+1),k=纠错级别
设置方式:options. ErrorCorrection = PDF417ErrorLevel.k1;
参数默认为:k1
publicenum PDF417ErrorLevel
{
k1 =1,
k2 =2,
k3 =3,
k4 =4,
k5 =5,
k6 =6,
k7 =7,
k8 = 8
}
3. 条码缩放
模块水平放大:int XScale
条码模块水平方向放大倍数
设置方式:options. XScale=2;
参数默认为:1
模块垂直放大:int YScale
条码模块垂直方向放大倍数
设置方式:options. YScale=3;
参数默认为:2
若有开发问题咨询 QQ:409487486 (纯技术交流,非诚勿扰)