前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于PowerBuilder的搜索

PowerBuilder打印条形码技术-中山市最专业的ERP软件服务提供商 企诚软件 | 产品系列 | 联系我们 企诚资讯 在线咨询 您还可以通过在线工具与我们的客服人员取得联系。 PowerBuilder打印条形码技术 全屏预览 PowerBuilder打印条形码目前有两种方式可以容易简单实现:第一种方式:从网上下载条形码字体,然后将条形码字体安装在OS操作系统的字体库里面,安装方法,直接复制在C:\WINDOWS\Fonts\文件夹下面。 安装之后,则在设计DataWindow的时候,可将栏位字体设为“条形码”字体, 然后在客户端也同样安装条形码字体,则打印机可以正常打印。 第二种方式:无需要安装条形码字体,而是将客户端连接上条形码打印机,在将DataWindow中的资料正式打印之前,通过以下的语句,将Datawindow中某栏位的字体强行改变之后,然后输出给“条形码打印机”,则条形码打印机会打印出条形码dw_1.modify('#4.font.face=~'system~'')因为条形码打印机已经自带了条形码字体,所以font.fact=’CODE128B’ 第一种方式和第二种方式相比,第一种方式需要客户端安装条形码字体,第二种方式是直接调用条形码打印机自带的条形码字体。注意:第一种方式中,有些条形码字体,还要经过特殊处理,才可正常显示。 比如Code128B就要进行如下的处理: //CODE128条码基础知识//CODE128有三个版本//CODE128A: 标准数字和字母, 控制符, 特殊字符//CODE128B: 标准数字和字母, 小写字母, 特殊字符//CODE128C: [00]-[99]的数字对集合, 共100个//本函数采用CODE128B版本//条码由开始位、数据位、校验位、停止位组成//计算过程://1.取各字符ASC码乘以字符序号之和(以ASC=32为分界点,大于32减32,小于32加64)//2.计算校验码//3.组合条码:开始位+数据位+校验位+停止位int li_asc_total = 104 int li_asc_tmp,ichar lc_start=char(204)//采用CODE128B版本char lc_stop=char(206)int li_check_digitstring ls_check_digit //1.取各字符ASC码乘以字符序号之和(以ASC=32为分界点,大于32减32,小于32加64)For i = 1 To len(as_sourcetext) li_asc_tmp = Asc(mid(as_sourcetext,i, 1)) If li_asc_tmp >= 32 Then li_asc_total = li_asc_total + (li_asc_tmp - 32) * i Else li_asc_total = li_asc_total + (li_asc_tmp + 64) * i End If Next //2.计算校验码li_check_digit = mod(li_asc_total,103)If li_check_digit >= 95 Then//特殊字符 li_check_digit = li_check_digit + 100Else li_check_digit = li_check_digit + 32 end ifls_check_digit = char(li_check_digit) //3.组合条码:开始位+数据位+校验位+停止位Return lc_start + as_sourcetext + ls_check_digit + lc_stop © 2005 中山市企诚软件科技有限公司版权所有 粤ICP备12011108号 网站地图 企诚软件科技