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,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 另外你也可以直接从网上下载一些条形码字体,然后设置打印字体为条形码字体,这种方法更为简单,但是对打印机和扫描枪有一定的精度要求。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐