delphi7产生条码
导读:
1 通过菜单”Component”下的”Import ActiveX”将“Microsoft Access Barcode Control 9.0”控件引入。这个控件(msbcode9.occx)随同Office一起安装到系统中。
2 在“ActiveX”下可以看到该控件,可以直接拖放到窗体上。通过属性设置,可以设置条码类型,内容,宽度、高度等等。
条码的数据是通过”Value”属性设置,也通过Datasource等设置引用数据库字段。高度和宽度通过控件的高度宽度设置,空白区域没有找到办法缩减。
3 代码
在已经插入一个控件后,可以通过以下的处理进行打印。
我试过,打印、识读都没有问题。
有关不显示在界面上就进行打印的方法,希望用户自己查询。
procedure TForm1.Button1Click(Sender: TObject);
var
bmp:TBitmap;
sR,tR:TRect;
begin
//记录图像
bmp := TBitmap.Create;
sR := Rect(BarCodeCtrl1.Left,BarCodeCtrl1.Top,BarCodeCtrl1.Left + BarCodeCtrl1.Width,
BarCodeCtrl1.Top + BarCodeCtrl1.Height);
tR := Rect(0,0,BarCodeCtrl1.Width,BarCodeCtrl1.Height);
bmp.Width := BarCodeCtrl1.Width;
bmp.Height := BarCodeCtrl1.Height;
bmp.Canvas.CopyRect(tR,Canvas,sR);
// bmp.SaveToFile('c:/1.bmp');
//打印
printer.BeginDoc;
printer.Canvas.Font.Size := 15;
printer.Canvas.TextOut(10,10,'Barcodestrl demo');
printer.Canvas.Draw(20,100,bmp);
printer.EndDoc;
//释放资源
bmp.free;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
//产生条码
BarCodeCtrl1.Value := '012345678';
BarCodeCtrl1.Width := 400;
BarCodeCtrl1.Height := 100;
end;
一切顺利!
---------------------------------
有几点需要注意:
1 该控件好像不是非常符合条码的宽窄条比,所以需要找一个合适的宽高比例,以保证可识读。
2 按照上面的方法,会采用打印机驱动程序的默认设置。因此需要在打印机驱动程序上选择合适的页面和相关处理作为默认值。当然,应该有更加好的方法对打印机驱动进行设置,可以搜索一下网络吧!
3 另外你也可以直接从网上下载一些条形码字体,然后设置打印字体为条形码字体,这种方法更为简单,但是对打印机和扫描枪有一定的精度要求。
---------------------
作者:百炼成钢百忍成佛
来源:CSDN
原文:https://blog.csdn.net/beyondqd/article/details/6438881
版权声明:本文为博主原创文章,转载请附上博文链接!
delphi7产生条码的更多相关文章
- 基于Metronic的Bootstrap开发框架经验总结(14)--条码和二维码的生成及打印处理
在很多项目里面,对条形码和二维码的生成和打印也是一种很常见的操作,在Web项目里面,我们可以利用JS生成条形码和二维码的组件有很多.本文引入两个比较广泛使用的JS组件,用来处理条形码和二维码的生成处理 ...
- 浩瀚科技 定制现场无线手持打印PDA手持终端扫描条码开单解决方案
PDA通过扫描商品条码移动开单,实现便携式办公,伴随式销售,是深圳市浩瀚技术有限公司的一款最新安卓微POS产品,PDA能通过WIFI无线局域网.GPRS互联网直接与主机电脑连接,让公司业务人员能随时随 ...
- 现场打印智能无线PDA安卓POS 条码识别、打印、数据采集销售开单收银管理软件
现场打印安卓POS 条码识别.打印.数据采集管理软件 案例: 经营日化品牌,从事小型超市和日用品商店的批发配送业务. 公司以前的销售模式:三个业务员负责跑市场,每个人负责一个区域,平均每天每个人要去到 ...
- PDA手持终端扫描条码开单打印一体 结合后台电脑系统 数据同步交互解决方案
PDA通过扫描商品条码移动开单,实现便携式办公,伴随式销售,PDA能通过WIFI无线局域网.GPRS互联网直接与主机连接,让公司业务人员能随时随地了解公司产品信息,直接扫描商品条码,进行开单.入库.库 ...
- 条码固定资产管理PDA应用
条码固定资产管理解决方案 一.客户挑战与需求 随着企业经营管理的不断升级,固定资产管理的高效化.智能化管理越来越受到企业管理人员的重视.然而,固定资产具有数量大.种类多.价值高.使用周期长.使用地点分 ...
- PDA固定资产条码管理系统软件-解决固定资产实物清查的瓶颈问题,大大提高清查效率
固定资产管理系统是企业信息化管理中的一个重要组成部分,固定资产具有价值高,使用周期长.使用地点分散.管理难度大等特点.一个企业的良性发展,避免不了的要涉及到企业资产的有效管理.对于那些技术装备密集型的 ...
- 重新用delphi7写东西
晚上开始写通讯录的程序,又对表进行点修改.重新开始用delphi7很不习惯,太不好用了. TArecord=record Const UserName=’YHName’; ..... End; 这个在 ...
- 【Delphi7】 解决“程序第一次可以正常编译,但再次编译的时候会报错,必须重新打开Delphi”的问题
报错如下: Access violation at address 00495044 in module 'coreide70.bpl'. Read of address...Access viola ...
- BarTender如何将条码下的数字嵌入到条码中
现今社会,在各种包装箱子.书籍.超市商品等东西上面,必不可少的绝对要数条形码或者二维码了.有时候,根据客户的需求或者其他条件限制等原因,我们需要将BarTender 2016条码下的数字嵌入到条码中. ...
随机推荐
- Eclipse中ctrl+shift+r与ctrl+shift+t的区别
eclipse中的两个常用的快捷键可以大大提升查找文件的效率,分别是: ctrl+shift+r : open resource, 打开资源. 它可以打开当前eclipse的工作区中所有(打开的)工程 ...
- applyColorMap()研究(如果我对现有的colormap不满意,那么如何具体来做)
cv::applyColorMap()能够实现预定义的伪彩色,这个是众所周知的事情. 并且和matlab提供的很相近 除了这些预置的变换,如果我想实现新的变换,需要做LUT变换 cv::Mat ...
- iOS 允许后台任务吗?
个人整理 1,用户层: 低电量模式 App后台数据刷新 的开关会影响App后台运行 2, 10分钟时间 后台任务: 在AppDelegate中加入以下代码:不受1影响 - (void)applic ...
- oracle数据库的一个表中,怎么设置字段的默认值
如果表已经存在,用如下方法设置默认值. alter table 表名 modify 字段名 default 默认值; 如test表中设置address字段为'浙江省',可用如下语句: alter ta ...
- 集训总结DAY.1(18.5.22)——KMP
DAY 1——5.22 in the morning 依稀记得我们有一场contest. at night chf大佬讲KMP,先膜一波~~~ luoguP3375KMP模板题 KMP算法,又称模式匹 ...
- P2055 [ZJOI2009]假期的宿舍
思路 看到复杂的匹配条件,发现要让一个人和一个床匹配,所以就每个有床的人(指本校学生)和t连一条边,每个需要床的人(指外校的人和不回家的人)和s连一条边,i和j互相认识就把i和j的床连在一起,自己和自 ...
- [thymeleaf] - 1.Thymeleaf是什么
Thymeleaf是⾯向Web和独⽴环境的现代服务器端Java模板引擎,能够处 理HTML,XML,JavaScript,CSS甚⾄纯⽂本. Thymeleaf旨在提供⼀个优雅的.⾼度可维护的创建模板 ...
- Twitter REST API, Streaming API
原文链接 用Twitter自己的话来说: REST API The REST API provides simple interfaces for most Twitter f ...
- 51Nod—1174 区间中最大的数 线段树模版
在大佬们题解的帮助下算是看懂了线段树吧...在这mark下防一手转头就忘. #include<iostream> #include<stdio.h> using namespa ...
- mybatis批量更新数据参考
https://blog.csdn.net/xyjawq1/article/details/74129316