Delphi实现条码生成与打印实现代码
条形码或称条码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。条形码技术主要原理是利用了光的反射,白色物体能反射各种波长的可见光,黑色物体则吸收各种波长的可见光,所以当条形码扫描器光源发出的光在条形码上反射后,反射光照射到条码扫描器内部的光电转换器上,光电转换器根据强弱不同的反射光信号,转换成相应的电信号。 第一个条形码是与食品有关的,1949年美国人诺曼·伍德兰和伯尼·西尔法(Berny Silver)申请了用于食品自动识别领域的环形条形码。 常用的一维条形码标准包括三九码、二五码、EAN 128码等等,本文只讨论一维码的生成和打印编程,二维码等不再说明。 常用的条码生成和打印编程方式包括以下三种: 一、条码字体。 使用条码字体来生成和打印条码是最简单的,因为只要直接调用字体就好了,但是使用字体生成的条码打印后分辨率十分低。此种技术一般使用39码来编码,因为39码的条形比较宽,相对于其他编码格式的条形码,识别率比较高。但是过宽的因素又会导致打印出来的条码很大,以吵吵的实验为例,用39码字体打印出来12位数的条码,长度达到5厘米左右,手持的扫描枪才比较容易识别。 所以该种方式只适合足够大的页面打印,而且识别率不是很高。 二、Excel控件调用方式。 Excel中有一个控件叫做Microsoft BarCode 控件9.0,该控件属于ActiveX控件,这意味着你可以在其它应用程序中调用该控件来生成条码。 使用该控件可以方便的生成条码,但是这个控件并不是那么好用。它是一个有界面的控件,大小比较难以调整,吵吵用的时候,还出现了一个问题是,当条码生成之后,我去读它的图片,由于控件还没刷新,结果读到张空白图片。 三、BCEncode.dll。 如果要打印识别率十分高的条码,条码一定是一个像素一个像素点画的,但是由于规则的复杂等原因,我们就不再去自己慢慢画了,那么有什么好一点库和类封装好了么? BCEncode.dll是一个是我找到的一个比较好用的动态库,该库可以通过API的调用方式生成我们需要的条码,然后返回Windows的位图句柄HBitmap,有了这张位图,我们就可以任意去绘制条码了。 通过吵吵的实验,使用25码编码,12位的数字编码后的条码宽度只有1.5厘米的时候,识别率还特别的高,基本扫描无障碍。用于吵吵试剂管理系统的条码就是用这个生成的25码,12位数字,条码大概2.5厘米左右,识别率100%。 delphi实现条码生成与打印实现代码 以下是用dlephi写的一个条码打印类,用于打印试剂的条码、名称、过期日期和批号: unit FMBarCode; interface uses type lDpi:DWORD;nBType:Integer;lpszText:AnsiString; nNarrow: integer;nWide:integer;nHeight:Integer;nRotate:Integer; nReadable:Integer; err:DWORD):DWORD;stdcall; AnsiString;nNarrow:Integer;nWide:integer; nHeight:Integer;nRotate:Integer;nReadable:Integer; err:DWORD):HBITMAP;stdcall; implementation constructor TFMBarCode.Create(APrinterIndex:Integer); end; destructor TFMBarCode.Destroy(); function TFMBarCode.AddBar(ABarPrint:BarPrintInfo):Boolean; Result:=True; procedure TFMBarCode.Print(); iCol:=3; end; end; |
Delphi实现条码生成与打印实现代码相关推荐
- 条码生成代码(Code39码)
zryou 的 条码生成代码(Code39码) 『Code 39条形码介绍』 code39条码能表示字母.数字和其它一些符号共43个字符:A -Z, 0-9, -.$/ + %, space等,其主要 ...
- SAP Bar Code 开发(02) – 条码生成与输出打印
上篇文章中讲述了SAP Bar Code的几种解决方案: 而本文主要讲述条码的格式类型及其SAP提供的条码格式打印: 1. 条码类型与码制 对于条码的类型估计都很熟悉,主要分为一维码和二维码: 然而, ...
- C#-利用ZPL语言完毕条形码的生成和打印
近期由于公司项目的须要,研究了一项对我来说算是新的技术-条形码的生成和打印.由于之前没有接触过这方面的知识,所以刚開始还有点小迷茫和小兴奋,只是一步一步来,问题总会解决的.如今来总结一下做条形码 ...
- 条码生成器之批量生成EAN-8商品条码
EAN-8码和EAN-13码都是商品条码,不同的是EAN-13码是商品条码的标准码,EAN-8码是商品条码的缩短码,当产品包装小于120平方公分,无法使用标准码时,就可以申请使用缩短码. EAN-8码 ...
- C#-利用ZPL语言完成条形码的生成和打印
最近因为公司项目的需要,研究了一项对我来说算是新的技术-条形码的生成和打印.因为之前没有接触过这方面的知识,所以刚开始还有点小迷茫和小兴奋,不过一步一步来,问题总会解决的.现在来总结一下做条形码 ...
- 一段动态生成表格的JSP代码讲解
一段动态生成表格的JSP代码讲解 <table border="1" width="600px" align="center"> ...
- 批量生成6位数字_分享一款可做各种流水号的条码生成软件
对于刚接触条码生成软件的新用户,在条码生成软件中设计可变数据条码或者流水条码时,可能会有一点困难,如果一个一个的设计条码,不仅费时费力,还容易出错.特别是需要设计一些跳号的流水条码时,更是难上加难.其 ...
- java生成pdf_Java实现PDF文件生成并且打印pdf文件 demo
## Java实现PDF生成并且打印pdf文件(附demo) #### 目录: 0. 效果预览 1. 准备环境 2. Java如何调用打印机进行打印 3. Java如何生成pdf打印文件 4. 实现p ...
- 如何以及为什么使用Spoon分析,生成和转换Java代码
Spoon是分析,生成和转换Java代码的工具. 在本文中,我们将看到通过使用以编程方式处理代码的技术可以实现什么. 我认为这些技术不是很广为人知或使用,这很遗憾,因为它们可能非常有用. 谁知道,即使 ...
最新文章
- 北海a货翡翠,牡丹江a货翡翠
- 最大信息系数MIC--minepy安装
- github 进阶说明
- 【计算机组成原理】内存
- 内存管理tcmalloc
- 一加9 Pro高清渲染图曝光:后置四摄加持哈苏logo真香
- 关于百万用户服务器架构能力(一)QQ游戏服务器架构
- php怎么加一个透明的菜单栏,window_PHP制作下拉透明菜单,下拉透明菜单
script language= - phpStudy...
- oracle两种用户认证方式
- 3ds Max 文件修改版本工具
- linux c语言round函数,c语言round函数使用问题
- 牛顿迭代法求解开根号、泰勒展开式求解arctan及cordic的原理
- 运营必备九大互联网思维
- 针对在校大学生的C语言入门学习——高级语法
- 索尼笔记本E系列,关闭触摸板
- HCIE——园区网架构
- Maven插件之versions-maven-plugin
- mingw32-make.exe缺少的方法
- 微信小程序-iphone打开页面空白,报错Miniprogramerror Syntaxerror...
- link: unknown option -- n