| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1909 人关注过本帖, 1 人收藏
标题:关于用VFP解决Code128c条形码的打印问题
只看楼主 加入收藏
gyluming
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2021-1-12
结帖率:100%
收藏(1)
已结贴  问题点数:10 回复次数:44 
关于用VFP解决Code128c条形码的打印问题
最近一直在网上查找,怎样打印code128的条形码。查了很多资料,得到的基本结论就是,code39可以用字库解决,前后加*号即可,code128c有点难,下载了code128的字库,可以打印,但扫描时是无法识别的,扫描枪识别不了,试卷扫描系统也识别不了(学生的准考证号是粘贴条码识别的),前面需要加开始符,末尾需要加验证符与结束符。

[此贴子已经被作者于2023-6-13 10:31编辑过]

搜索更多相关主题的帖子: 打印 扫描 条形码 识别 VFP 
2023-06-13 10:27
gyluming
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2021-1-12
收藏(1)
得分:0 
这个是在网上找到的CODE128的编码规则,可惜有点错误。
图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册


这一页错了,红色的部分应该是195--206,也就是说,CODE128C的开始符应该是CHR(205),结束符应该是CHR(206)。

图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2023-6-13 10:44编辑过]

2023-06-13 10:29
gyluming
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2021-1-12
收藏
得分:0 
依照上面的编码规则,我用报表打印学生考试条码标签CODE1128C
考号的后四位分别是考场号和座位号。

图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册


程序代码:
SET TALK OFF
SET SAFE OFF
CLOSE DATABASES ALL
MESSAGEBOX("请先选择学生库",0+64,"条形码打印")
filename = GETFILE()
SELECT 考号, 姓名,学校,;
       SubStr(考号,9,2) AS 考场,;
       SubStr(考号,11,2) AS 座号,;
       205 AS TXM0,;
       INT(IIF(VAL(SUBSTR(考号,1,2))<95,VAL(SUBSTR(考号,1,2))+32,VAL(SUBSTR(考号,1,2))+100)) AS TXM1,;
       INT(IIF(VAL(SUBSTR(考号,3,2))<95,VAL(SUBSTR(考号,3,2))+32,VAL(SUBSTR(考号,3,2))+100)) AS TXM2,;
       INT(IIF(VAL(SUBSTR(考号,5,2))<95,VAL(SUBSTR(考号,5,2))+32,VAL(SUBSTR(考号,5,2))+100)) AS TXM3,;
       INT(IIF(VAL(SUBSTR(考号,7,2))<95,VAL(SUBSTR(考号,7,2))+32,VAL(SUBSTR(考号,7,2))+100)) AS TXM4,;
       INT(IIF(VAL(SUBSTR(考号,9,2))<95,VAL(SUBSTR(考号,9,2))+32,VAL(SUBSTR(考号,9,2))+100)) AS TXM5,;
       INT(IIF(VAL(SUBSTR(考号,11,2))<95,VAL(SUBSTR(考号,11,2))+32,VAL(SUBSTR(考号,11,2))+100)) AS TXM6,;
       INT(IIF(MOD(105+VAL(SUBSTR(考号,1,2))*1+VAL(SUBSTR(考号,3,2))*2+VAL(SUBSTR(考号,5,2))*3+VAL(SUBSTR(考号,7,2))*4+VAL(SUBSTR(考号,9,2))*5+VAL(SUBSTR(考号,11,2))*6,103)<95,;
       MOD(105+VAL(SUBSTR(考号,1,2))*1+VAL(SUBSTR(考号,3,2))*2+VAL(SUBSTR(考号,5,2))*3+VAL(SUBSTR(考号,7,2))*4+VAL(SUBSTR(考号,9,2))*5+VAL(SUBSTR(考号,11,2))*6,103)+32,;
       MOD(105+VAL(SUBSTR(考号,1,2))*1+VAL(SUBSTR(考号,3,2))*2+VAL(SUBSTR(考号,5,2))*3+VAL(SUBSTR(考号,7,2))*4+VAL(SUBSTR(考号,9,2))*5+VAL(SUBSTR(考号,11,2))*6,103)+100)) AS TXM7,;
       206 AS TXM8;
FROM &filename INTO TABLE DBF\TXM.DBF
REPORT FORM DBF\TXMDY preview


图片附件: 游客没有浏览图片的权限,请 登录注册


问题出现了,两位ASCII字符会自动拼成汉字,头疼。

[此贴子已经被作者于2023-6-13 10:45编辑过]

2023-06-13 10:35
gyluming
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2021-1-12
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

标签打印.rar (3.76 KB)


[此贴子已经被作者于2023-6-13 11:29编辑过]

2023-06-13 11:06
星光悠蓝
Rank: 9Rank: 9Rank: 9
来 自:山水甲天下
等 级:贵宾
威 望:52
帖 子:525
专家分:1278
注 册:2010-1-11
收藏
得分:0 
不要总着想着免费使用,使用量大的话,建议买一个正版控件!
2023-06-13 11:30
gyluming
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2021-1-12
收藏
得分:0 
回复 5楼 星光悠蓝
要不少钱的😁关键还是想挑战一下,网上我看好像打code128成功的,有一位成功的网友很执着,硬是把107种条码分别存成图片,再紧贴排版,打印成功的🤣🤣🤣
2023-06-13 12:15
sam_jiang
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:789
专家分:1165
注 册:2021-10-13
收藏
得分:0 
有现成的条码类,免费的
2023-06-13 12:44
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1089
专家分:2682
注 册:2015-12-30
收藏(2)
得分:8 
没那么复杂,使用foxbarcode就能解决,我一直在用
(1)在表单的init里加下面两句(程序见附件)
SET PROCEDURE TO foxbarcode ADDITIVE
SET PROCEDURE TO gpimage2.prg ADDITIVE
(2)在打印标签的按钮里使用下面的语句

PRIVATE poFbc
poFbc = CREATEOBJECT("FoxBarcode")
WITH poFbc
  .cImageType = "BMP"
*  .cImageFile = SYS(5)+SYS(2003)+"\xbarcode"    && 可以输出为图片文件
  .nBarcodeType = 110  && Code 128
  .cSet128 = "A"    &&"Auto" && Set 128 C
  .nImageHeight = 70
  .nFactor = 2
  .nFontSize = 9
ENDWITH
(3)标签中的使用
图片附件: 游客没有浏览图片的权限,请 登录注册


foxbarcode.zip (43.3 KB)
收到的鲜花
  • 厨师王德榜2023-06-13 14:06 送鲜花  1朵   附言:好文
  • gyluming2023-06-13 15:53 送鲜花  1朵   附言:谢谢指导!
2023-06-13 13:51
easyppt
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:302
专家分:696
注 册:2021-11-24
收藏
得分:0 
foxbarcode 最大的问题就是条码宽度不能根据DPI缩放,同样的条码字符串,别的条码打印宽度可以很小,而 foxbarcode却不可以。
(Width随意更改会导致扫码枪识别不了)
2023-06-13 15:17
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1089
专家分:2682
注 册:2015-12-30
收藏
得分:0 
以下是引用easyppt在2023-6-13 15:17:18的发言:

foxbarcode 最大的问题就是条码宽度不能根据DPI缩放,同样的条码字符串,别的条码打印宽度可以很小,而 foxbarcode却不可以。
(Width随意更改会导致扫码枪识别不了)

我现在用的标签6*4和8*5都没问题,太小的没用过,客户应用中目前也不需要太小的
2023-06-13 15:24
快速回复:关于用VFP解决Code128c条形码的打印问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023114 second(s), 12 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved