条码生成与打印的技术实现

简介:
条码打印不是什么新技术,实现方式也是多种多样,最简单方式就是购买条码打印字体,这样指定条码文本为相应的条码打印字体就可以实现了(当前产品线比较丰富的商业化条码打印字体我推荐采用BarcodeSoft的条码打印字体,其网站地址为 [url]http://www.barcode-soft.com[/url],BarcodeSoft提供的字体不光有一维的,还有二维的,甚至签名字体等)。
一个项目中需要使用条码打印技术,开始准备使用条码打印字体,但是同甲方原来采用的条码打印方案无法实现平滑过渡,于是采用条码控件来实现。
条码生成控件最知名的应该是Ms barcode control 9.0了(即MSBCODE9.OCX,这个控件包含在Ms Office2000之后,随MsOffice免费提供)。不过这次我们使用的是FathSoft公司(网址 [url]http://www.fathsoft.com/[/url])的条码控件BarcodeX.OCX。这个控件显然比MsBCode9要好用一些,能够在高级语言如VC、C#、Delphi、VB、PB中非常容易地实现条码生成。BarCodeX控件采用的是同打印字体不同的另一种条码实现方式,将指定文本的条码实现为BMP图片(还支持EMF或者PNG格式),然后再将图片显示在指定的显示区域(如果仅仅只是显示,根据不同的编程环境还有其它不同的处理方法)或者打印区域。
BarCodeX 5.3产品介绍说它能支持的条型码包括EAN-13, EAN-8, EAN-2, EAN-5, UPC-A, UPC-E, Code39, Code39 Ext., Code93, Code 128, EAN-128, ISSN, ISBN, Plessey, Code11, Code25, Code25 Int., Codebar以及PDF417二维条形码,可以用于Windows的应用软件中,如MS Word、MS Access,也可以集成在Visual Basic, VisualStudio .NET编写的应用程序以及ASP页面中。
使用BarCodeX.OCX实现条码生产与打印的步骤如下:
  1. 在指定的容器中加入条码控件BarCodeX.OCX。
  2. 设置条码打印控件的代码类型(barcodeType,比如为8:Code128)、条码对齐方式(BarcodeAlign,0:左对齐,1:中间对齐,2:右对齐)、条码显示方向(Orientation,0:正向,1:旋转90度,2:旋转180度,3:旋转270度)、是否根据显示区域自动调整条码大小的比例(Scaling,0:不按照比例显示,1:按照比例显示)、字体(条码文字显示的字体)等参数。
  3. 根据需要赋予条码打印控件的条码值(Caption,如Caption="C2705004010507112ABCED")。
  4. 调用控件方法CreateBMP( strFile, nWidth, nHeight )生成条码打印图片,其中strFile是需要保存的条码图片的文件,当然既然要保存为BMP图片,文件的后缀名理当为BMP,nWidth和nHeight分别指定图片的宽度和高度。
  5. 在显示和打印中调用上述形成的BMP文件即可。

本文转自foresun  51CTO博客,原文链接:http://blog.51cto.com/foresun/40487,如需转载请自行联系原作者
相关文章
|
10月前
微信公众号扫码条形码和二维码后用split函数按照条码类型进行截取处理的解决方案
微信公众号扫码条形码和二维码后用split函数按照条码类型进行截取处理的解决方案
51 0
|
11月前
|
编解码 算法
打印【A级条码】的方法
条码的检测等级是条码能否被识别扫描的关键,条码的等级分为“A B C D F”五个等级,A级是最高级别,一些出口欧美的标签上的条码都要求达到A级,主要是保证条码的扫描识别率。
85 0
打印【A级条码】的方法
|
11月前
条码二维码输出PDF文件的方法
有些印刷或打印设备是以PDF文件的导入方式来批量打印,Label mx 标签软件可以满足这个要求,支持任何PDF虚拟打印机将整个标签以排版的方式多页输出为一个PDF文件。
120 0
|
11月前
|
数据库
打印两个或多个同时流水的标签
组合数据功能是文字、一维条码、二维条码高级属性,可以实现数据的复杂组合,如:图形之间并联、多种流水号组合、流水号和数据库组合、多个数据库字段合并等。
52 0
|
11月前
打印跳4、7的流水码数据
做防伪的朋友经常遇见有些客户比较忌讳4和7在流水号中出现,希望打印流水号的时候跳过去,Label mx 条码软件提供了流水“自定义进制”的功能, 可以完美实现。当然,利用“自定义进制”可以实现任一数字或字母的跳码。
86 0
|
Java Python
实现万年历的输出
Java(switch)和 Python(列表)对于万年历的输出 switch分支用数组也可以实现,为了做笔记写了switch 已知1900年1月1日是星期一,请用户输入查询的年份以及月份,查询出对应的万年历,万年历格式如附件图所示:
132 0
实现万年历的输出
|
编解码 开发工具 Windows
案例分享:Qt管道焊接参数条码打印系统(条码打印机TSC 244 Pro、打印条码、打印中文、打印字符、多张连续打印)
案例分享:Qt管道焊接参数条码打印系统(条码打印机TSC 244 Pro、打印条码、打印中文、打印字符、多张连续打印)
案例分享:Qt管道焊接参数条码打印系统(条码打印机TSC 244 Pro、打印条码、打印中文、打印字符、多张连续打印)
|
iOS开发
iOS蓝牙打印商品价格标签的模板及打印交易小票的模版
iOS蓝牙打印商品价格标签的模板及打印交易小票的模版
239 0
iOS蓝牙打印商品价格标签的模板及打印交易小票的模版
|
数据库
条码打印软件如何批量打印快递单
随着快递行业的兴起,也会出现各种各样的快递单,快递单上除了有“收件人”“收件人地址”“收件人电话”等固定不变的数据,还应该有相对应的可变数据,需要一起打印出来才能应用于快递包裹上,如果一两条可以手动输入打印,但是如果是几十上百条,手动输入就会非常的麻烦。
2071 0
条码标签打印软件如何实现标签重复打印
重复打印是批量打印中的一种重要的打印方式。在批量打印条码、标签、图片的时候经常会遇到,把同一个标签重复打印多份,或者是把同一张标签纸重复打印多张。那么在条码标签打印软件中如何实现重复打印的呢?下面介绍两种重复打印的方式。
2027 0