高校一卡通系统快速打印制卡的实现
文章出处:http://www.singbon.com 作者: 人气: 发表时间:2011年12月11日
摘要:随着越来越多的高校引入一卡通系统,高效地管理一卡通系统变得越来越重要。该文针对高校一卡通系统中普遍存在的无法快速制卡的问题,详细分析了现状,提出了通过一卡通接入平台构建新的子系统来解决该问题的方案,并实施了该方案。
1 高校一卡通制卡现状分析
高校一卡通是一种以智能卡为介质,对高校用户进行统一的消费和身份管理的解决方案。它将传统的消费介质(饭卡、洗衣卡、水票、上机卡、校内公交卡等)和身份认证方式(学生证、借书证、游泳证、网络账号、门禁卡等)统一到一张智能卡上,通过校园网或专网进行信息的快速同步,各个子系统使用同一数据库实现数据的准确共享。高校一卡通不仅能大大提高校内消费和身份认证的使用和管理效率,同时也是数字化校园建设的重要组成部分,目前大多数高校已经使用或者计划使用一卡通系统。
1.1 一卡通制卡流程简介
制卡是指将从厂家采购的空白卡制作为用户可以使用的卡片,目前制卡需要以下几个步骤:第一步,初始化卡片;第二步,向系统导入用户信息;第三步,打印卡片;第四步,写卡(在卡中写入用户对应的信息)。第一步和第二步是可以提前完成的,第四步所需时间较短,也没有改进空间,而第三步耗时最长,如何实现快速打印卡片可以进一步探讨。
1.2 打印卡片现状
目前高校打印卡片主要有两种方式,一种为卡厂印卡,一种为自行印卡。
卡厂印卡:将卡片的打印信息和打印卡样发送给印卡工厂,由工厂统一印制。这种方式优点为:能够一次性打印几千上万张卡,印刷错误率低;缺点为:耗时长(一批次需要一个月左右时间),不能打印少量卡片(工厂一般不受理低于1000 张的卡片打印),所以高校一般在新生入学时才会采用卡厂印卡的方式。
自行印卡:使用学校采购的证卡打印机进行印卡。一卡通开发厂商向一卡通管理人员提供了一种通用印卡程序,该印卡程序需要先将用户信息从一卡通管理系统中导出并制作成*.txt 或*.csv 格式文件,再根据需要打印的字段在文件第一行插入表头,然后将用户的相片拷贝到用户信息文件的目录下,最后选择预先设置好的打印模板才能开始打印。自行印卡的优点为:能够针对少数人印卡;缺点为:操作复杂,人为出错率高,虽然可以一次打印多张卡片,但每次手动准备的时间最短也需要30 秒,且该打印程序如果一批次打印超过50 张容易出现打印不出照片的现象。
上述两种印卡方式使高校一卡通的管理者在发放卡片时陷入了一个困境:新生入学时,必须提前一个月将新生信息发送给卡厂,而高校的新生信息最终全部确认往往要等到开学前一两周,所以很多高校一卡通管理者不得不向新生发放“过渡卡”,由于“过渡卡”不含有身份信息,新生入学后一段时间内将面临无法使用身份认证功能的尴尬,“过渡卡”换“正式卡”也将带来一系列的管理问题;而日常业务中,由于自行印卡时间长,在制卡人数较多的工作日(如周一或新学期前几天)用户往往要等一天甚至几天才能拿到一卡通卡片。
可见,当前快速制卡的瓶颈在于打印卡片,只有通过提高打印卡片的效率才能从根本上解决一卡通管理者无法及时发放卡片的问题。
2 用编程的方式实现数据对接和快速制卡
2.1 打印卡片子系统设计
目前的打印卡片程序与一卡通系统是两个独立的系统,这导致了从一卡通系统导出的信息必须手动修改为通用打印程序可以识别的格式才能使用,这不仅增加了制卡的工作量,也增加了打印卡片的出错率,打印程序在打印多张卡片时出现某些卡片无法打印出照片的现象也大大增加了废卡率。
高校一卡通系统包含若干子系统,每个接入的子系统都使用一卡通接入平台与一卡通后台进行交互(如图1 所示)。这样做的好处是统一了一卡通各个子系统访问后台数据库的方法,使后台数据库对接入的子系统来说完全透明,同时也保证了系统后台的安全性。采用一卡通系统的这种模式,开发一个直接与一卡通接入平台交互的打印卡片子系统。用子系统程序取代以前对数据和文件的手动操作,一方面避免打印卡片过程中重复性的、繁琐的工作,另一方面避免使用旧打印卡片程序出现的BUG。构建完成的打印卡片子系统将成为一个适用于高校一卡通数据对接和应用的个性化子系统。
图1 打印卡片子系统结构
片和文字的打印。GDI+是GDI 的新版本,普遍应用于Windows 平台2D 图形和文本的绘制和操作,是应用程序和硬件设备的中间层,它使应用程序可以兼容所有支持Windows 平台的硬件(如图2 所示)。在GDI+的坐标系中用矩形图形的三点确认图像位置和大小后绘制图形, 用左上角的点确认文字的位置后绘制文字(如图3)。GDI+是通过创建Graphics 对象来实现绘图功能的,使用VB2005 现有打印控件的打印事件PrintPage 获得Graphics 对象。Graphics 对象调用从一卡通接入平台取得的相片(已转换为image 类型)即可在硬件指定位置上打印个性化相片;调用从一卡通接入平台取得的文字信息,设置好字体、颜色即可在硬件上打印个性化文字。
2.2 打印卡片子系统编程
新建一个一卡通接入平台,或利用目前正在使用的接入平台。配置好接入平台的IP地址,通讯端口号,系统代码,终端号。通过下面的代码(VB.NET2005)调用一卡通系统的API 函数初始化与接入平台的连接。
向一卡通接入平台请求所需用户信息, ykt_accountno 是作为查询条件的一卡通账号,查询函数成功后,将把查询结果写入AccountMsg结构中。
初始化打印页面后打印。首先根据卡片的大小设置打印页面大小,然后按照打印控件的要求画出所要打印的图片和文字。由于采用的是微软Windows 的通用打印控件,所以打印页面生成后可以通用于任何可以在Windows 系统下工作的打印设备。
2.3 快速打印卡片子系统的运行界面
打印卡片子系统既可以对单个用户进行查询和打印(如图4),也能一次对多个查询条件进行批量打印(如图5)。
一方面它弥补了卡厂印卡模式中灵活性不足的缺点,另一方面也弥补了自行印卡模式印刷错误率高、操作复杂等问题。
3 结束语
作为高校一卡通的管理人员,快速将卡片发放到用户手中是非常重要的。在令人困扰的制卡现状下,在分析了一卡通制卡的整个流程后,针对效率最低的卡片打印环节进行改进,使整个制卡流程的每个环节都达到效率最高。采用新的制卡方案,不仅可以使高校一卡通系统的管理者可以快速地大批量制卡,同时也让大量单个用户办卡“立等可取”。可见,在一卡通系统提供的一卡通接入平台基础上,开发各种应用,完善一卡通系统,是高校一卡通建设和应用的一个实用的思路。《电脑知识与技术》
作者简介:刘洋(1981-),男,四川人,助理工程师,学士,研究方向为一卡通系统管理和应用;温健(1980-),男,陕西人,助理工程师,
大专,研究方向为计算机科学及应用。
【稿件声明】:如需转载,必须注明来源和作者,保留文中图片和内容的完整性,违者将依法追究。