delphi 条形码
Delphi中打印条码的方法
导读:
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 另外你也可以直接从网上下载一些条形码字体,然后设
置打印字体为条形码字体,这种方法更为简单,但是对打印机
和扫描枪有一定的精度要求。
delphi 条形码的更多相关文章
- 《zw版·delphi与halcon系列原创教程》zw版_THOperatorSetX控件函数列表 v11中文增强版
<zw版·delphi与halcon系列原创教程>zw版_THOperatorSetX控件函数列表v11中文增强版 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就 ...
- Delphi插件创建、调试与使用应用程序扩展
Delphi插件创建.调试与使用应用程序扩展 翻译 : MiracleZ 有没有使用过Adobe Photoshop?如果用过,你就会对插件的概念比较熟悉.对外行人来说,插件仅仅是从外部提供给应用程 ...
- C# 条形码操作【源码下载】
本篇介绍通过C#生成和读取一维码.二维码的操作. 目录 1. 介绍:介绍条形码.条形码的分类以及ZXing.Net类库. 2. 一维码操作:包含对一维码的生成.读取操作. 3. 二维码操作:包含对二维 ...
- Android 扫描条形码(Zxing插件)
使用Android Studio 一.在build.gradle(Module:app)添加代码 下载,调用插件 1 apply plugin: 'com.android.application' ...
- 学习笔记:7z在delphi的应用
最近做个发邮件的功能,需要将日志文件通过邮件发送回来用于分析,但是日志文件可能会超级大,测算下来一天可能会有800M的大小.所以压缩是不可避免了,delphi中的默认压缩算法整了半天不太好使,就看了看 ...
- 在DevExpress程序中使用条形码二维码控件,以及进行报表打印处理
在很多业务系统里面,越来越多涉及到条形码.二维码的应用了,不管在Web界面还是WInform界面都需要处理很多物料相关的操作,甚至很多企业为了减少录入错误操作,为每个设备进行条形码.二维码的标签,直接 ...
- delphi连接sql存储过程
针对返回结果为参数的 一. 先建立自己的存储过程 ALTER PROCEDURE [dbo].[REName] ) AS BEGIN select ROW_NUMBER() over(order by ...
- Java 条形码 二维码 的生成与解析
Barcode简介 Barcode是由一组按一定编码规则排列的条,空符号,用以表示一定的字符,数字及符号组成的,一种机器可读的数据表示方式. Barcode的形式多种多样,按照它们的外观分类: Lin ...
- delphi 2010与delphi XE破解版的冲突
在系统中同时安装了Dephi 2010LITE版与Delphi XE lite后,总是会有一个有问题 是因为两者都是读取C:\ProgramData\Embarcadero目录下的license文件, ...
随机推荐
- 主动攻击:利用ms08_067_netapi进行攻击
利用ms09_053_wins进行攻击 ms08_067漏洞 如果用户在受影响的系统上收到特制的 RPC 请求,则该漏洞可能允许远程执行代码. 在 Microsoft Windows 2000.Win ...
- Ant build.xml详解
Ant的概念 可能有些读者并不连接什么是Ant以及入可使用它,但只要使用通过Linux系统得读者,应该知道make这个命令.当编译Linux内核及一些软件的源程序时,经常要用这个命令.Make命令其实 ...
- Python3基础 dict fromkeys 多个键对应相同的值
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- 大数乘法|2012年蓝桥杯B组题解析第六题-fishers
(9')大数乘法 对于32位字长的机器,大约超过20亿,用int类型就无法表示了,我们可以选择int64类型,但无论怎样扩展,固定的整数类型总是有表达的极限!如果对超级大整数进行精确运算呢?一个简单的 ...
- (转) Supercharging Style Transfer
Supercharging Style Transfer Wednesday, October 26, 2016 Posted by Vincent Dumoulin*, Jonathon Shl ...
- Images之multi-stage builds
原文链接 Use multi-stage builds Multi-stage builds are a new feature requiring Docker 17.05 or higher on ...
- 使用MapperScannerConfigurer简化MyBatis配置
MyBatis的一大亮点就是可以不用DAO的实现类.如果没有实现类,Spring如何为Service注入DAO的实例呢?MyBatis-Spring提供了一个MapperFactoryBean,可以将 ...
- JavaScript获取星期几的几种方法
星期几的4种JS代码写法,有需要的朋友可以参考一下 第一种写法 代码如下: var str = ""; var week = new Date().getDay(); if ( ...
- 测试与CMMI质量体系
1. CMMI全称是Capability Maturity Model Integration,即能力成熟度模型集成(也有称为:软件能力成熟度集成模型) 其目的是帮助软件企业对软件工程过程进行管理和改 ...
- 51nod 1624 取余最长路
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1624 题意: 思路:因为一共只有3行,所以只需要确定第一行和第二行的转折 ...