手把手教你WEB套打程序开发

上传人:无*** 文档编号:158246274 上传时间:2022-10-03 格式:DOC 页数:10 大小:454KB
收藏 版权申诉 举报 下载
手把手教你WEB套打程序开发_第1页
第1页 / 共10页
手把手教你WEB套打程序开发_第2页
第2页 / 共10页
手把手教你WEB套打程序开发_第3页
第3页 / 共10页
资源描述:

《手把手教你WEB套打程序开发》由会员分享,可在线阅读,更多相关《手把手教你WEB套打程序开发(10页珍藏版)》请在装配图网上搜索。

1、手把手教你WEB套打程序开发WEB套打可选方案不多,理想的更少,利用免费控件Lodop+JavaScript实现精确套打,算是较为经典的选择。这种方案其实比较简单,利用一个htm文件就可以实现模板设计过程,几乎是“空手套”式的开发,但理解这几个步骤还是需要点时间,下面一步步详细演示说明:第一步:建立一个空白的模板设计文件把以下超文本代码复制到一个本地htm文件中:窗体顶端窗体底端本文模拟EMS特快专递单的程序开发,文件起名为printEMS.htm,权且称它为模板设计文件。第二步:用浏览器打开该文件 在本地文件夹中双击该文件就可以打开,但在进入设计之前,你的机器需要安装Lodop,如果还没安装

2、过,请在如下地址下载安装文件(解压rar后运行那个exe文件,Lodop是一个1M左右的小文件):或 第三步:准备设计成功安装Lodop之后再次打开模板设计文件printEMS.htm,点击其中“模板设计”链接,就弹出如下空白的打印设计窗口: 为了尽快定位模板中的数据位置,你需要做一张票据扫描图作为背景,当然没有扫描图也能完成,只是需要多摸索几次,费点时间而已。 下面是我做的EMS扫描图,你把该图另存成一个jpg文件,以便我们一起完成后面的演示步骤。第四步:装载背景图并调整图片大小在打印设计窗口,点下图所示的“装载背景图.”菜单,调入以上保存的EMS图片文件。 装载背景图后,点上图所示的“调整

3、背景图.”菜单,弹出下图“背景图调整”窗口,设定其中的图片宽度为209mm,高度113mm会自动变化。 这个宽度值是我测量实际票据得来的。如果扫描图是按1:1比例获得的,那么调整背景图这一步就免了。第五步:添加数据内容,开始打印测试 点下图所示“插入文本项”菜单,添加打印内容,内容项可以拖拉或精细调整,基本对准之后,点击“预览”按钮(注意旁边的“打印”按钮是收费功能,纸上会有水印,而“预览时的打印”按钮是完全免费的,我们用后者)。 把内容打印到薄一点的白纸上,然后在阳光下与真实票据透亮对比,以最左最上的某个内容为基准,其它内容远近调整,如此反复测试直到所有内容相互位置都对准。 这一步先做到内容

4、之间的相互位置对准,等下一步处理整体位置。第六步:整体对准 由于打印机左边距或上边距不一定是零或票据边缘有误差,所以尽管第五步打印出来的内容相互之间位置是准确的,但打印到真实票据上仍会整体偏离一些,需要进行整体位置调整。 点击下图红圈所示的“纸钉”按钮,“纸钉”弹起后,整个设计版面就可以上下左右调整了,然后按上一步的办法打印测试,直到整体对准成功。为了避免浪费票 据,打印时仍可用薄白纸测试,注意此时透光对照时,纸张的左边沿和上边沿要与票据对齐,通过观察内容的位置来判断是否整体对准。第七步:生成打印模板的程序代码 套打测试成功后,点击第五步图中所示的“生成程序代码”菜单,出现下图结果,这些代码就

5、是我们需要的模板程序代码,把他们复制出来,准备融合到你的页面程序中使用。第八步:完成打印模板设计文件想不想知道WEB套打有啥感觉?好,我们先做一个静态WEB页面爽一下:把第七步生成的程序代码,插入替换第一步的空白设计文件CreatePrintPage函数内,变成如下内容: 把以上内容复制到另外一个htm文件printEMS_OK.htm中,双击打开它,点其中的打印预览,就可以实现简单的WEB套打了。 以上八步基本完成了模板设计,并实现静态页面套打,但要把模板代码融合到实际的WEB程序中,还需要做些工作。第九步:模板程序代码的使用把以上CreatePrintPage函数进行简单改造,原函数如下:

6、function CreatePrintPage() LODOP.PRINT_INITA(14,11,800,600,套打EMS的模板); LODOP.ADD_PRINT_TEXT(95,95,75,20,寄件人姓名); LODOP.ADD_PRINT_TEXT(123,148,194,20,寄件人单位名称); LODOP.ADD_PRINT_TEXT(158,101,238,35,寄件人的详细地址); LODOP.ADD_PRINT_TEXT(92,446,75,20,收件人姓名); LODOP.ADD_PRINT_TEXT(122,496,208,20,收件人单位名称); LODOP.AD

7、D_PRINT_TEXT(160,460,244,35,收件人详细地址); LODOP.ADD_PRINT_TEXT(289,47,178,22,内件品名); LODOP.ADD_PRINT_TEXT(290,258,100,20,内件数量); LODOP.ADD_PRINT_TEXT(92,245,100,20,寄件人电话); LODOP.ADD_PRINT_TEXT(90,608,75,20,收件人电话);把其中的打印内容提出来做为变量参数,函数改成如下样式:function CreatePrintPage(strPName,strJJRXM,strJJRDW,strJJRDZ,strSJ

8、RXM,strSJRDW,strSJRDZ,strNJPM,strNJSL,strJJRDH,strSJRDH) LODOP.PRINT_INITA(14,11,800,600,strPName); /打印任务名 LODOP.ADD_PRINT_TEXT(95,95,75,20,strJJRXM); /寄件人姓名 LODOP.ADD_PRINT_TEXT(123,148,194,20,strJJRDW); /寄件人单位名称 LODOP.ADD_PRINT_TEXT(158,101,238,35,strJJRDZ); /寄件人的详细地址 LODOP.ADD_PRINT_TEXT(92,446,7

9、5,20,strSJRXM); /收件人姓名 LODOP.ADD_PRINT_TEXT(122,496,208,20,strSJRDW); /收件人单位名称 LODOP.ADD_PRINT_TEXT(160,460,244,35,strSJRDZ); /收件人详细地址 LODOP.ADD_PRINT_TEXT(289,47,178,22,strNJPM); /内件品名 LODOP.ADD_PRINT_TEXT(290,258,100,20,strNJSL); /内件数量 LODOP.ADD_PRINT_TEXT(92,245,100,20,strJJRDH); /寄件人电话 LODOP.ADD

10、_PRINT_TEXT(90,608,75,20,strSJRDH); /收件人电话;这个改造后的JS函数还是很好理解的,无论写入js文件还是直接嵌在页面内都简单易用。如果你改变了内容的字体、大小、粗斜体等格式,代码还会多一些,但总体来说比较简洁。第十步:设置纸张高度,实现连续套打多数套打业务的票据是连续纸,需要精确地分页,从而保证连续多页打印不偏移,为此以上代码还要在PRINT_INITA之后加一行SET_PRINT_PAGESIZE语句:function CreatePrintPage() LODOP.PRINT_INITA(14,11,800,600,套打EMS的模板); LODOP.S

11、ET_PRINT_PAGESIZE(1,209mm,113mm,);/设置纸张高度 LODOP.ADD_PRINT_TEXT(95,95,75,20,寄件人姓名); LODOP.ADD_PRINT_TEXT(123,148,194,20,寄件人单位名称); LODOP.ADD_PRINT_TEXT(158,101,238,35,寄件人的详细地址); LODOP.ADD_PRINT_TEXT(92,446,75,20,收件人姓名); LODOP.ADD_PRINT_TEXT(122,496,208,20,收件人单位名称); LODOP.ADD_PRINT_TEXT(160,460,244,35,

12、收件人详细地址); LODOP.ADD_PRINT_TEXT(289,47,178,22,内件品名); LODOP.ADD_PRINT_TEXT(290,258,100,20,内件数量); LODOP.ADD_PRINT_TEXT(92,245,100,20,寄件人电话); LODOP.ADD_PRINT_TEXT(90,608,75,20,收件人电话); 其中209mm这个纸宽参数意义不大,主要是113mm这个高度参数,它决定了每页的走纸距离,对连续打印影响很大。这个值是我测量实际票据高度得来的,包含纸张之间的撕孔间隙。理想的测量方式,是若干页连起来一起测量取其平均高。 加入纸高控制后的打印

13、预览如下,你可以连续打印两页内容到同一张长一点的白纸上,测试对照一下看看。把以上加入SET_PRINT_PAGESIZE语句的代码复制进第三个htm文件printEMS_OKM.htm试试。假如从第二页开始,内容向下偏移,说明纸张高度设置比实际票据大,就减小113mm这个参数值,否则增大它,这个参数可以精确到0.1mm。第十一步:让操作者自己调整位置 以上十步实现的套打可以很精确,但都是以当前打印机为前提。如果你的打印程序要面对许多种类型的打印机,甚至一些未知的打印机类型,那么“打印维护”功能会很有用处。你可以根据情况在程序中把该功能授权给最终操作者或现场技术维护人员,让使用者自己来调整打印位

14、置,以适应各种类型的打印机。 打印维护的指令语句是PRINT_SETUP,进入包含该功能的在线文件PrintEMS_OKMSetup.htm,先在打印维护中调整一下打印内容或整体位置,点“应用”按钮。关闭浏览器后重新打开,进入“打印预览”,看看是否有关联变化。下图是打印维护界面,其中能看到“应用”按钮和“恢复整体缺省”按钮的位置。以上拙笔语无伦次,请各位笑纳!本文参考如下资料:Web打印控件Lodop轻松输出清晰的图表和条码由于360杀毒软件对Lodop安装程序的自解压过程频繁地误报,为此Lodop近日发布了一个5.0之后的小版本,版本号是5.0.4.3,新版本安装程序不再压缩和自解压;同时增

15、加了几个相当实用而精彩的功能(原计划6.0版本的部分功能),下面介绍其中两个:一、仅用两行语句实现极其复杂的图表打印。类似如下两句:LODOP.ADD_PRINT_CHART(0,0,400,400,5,document.getElementByI d(table001).outerHTML);LODOP.SET_PRINT_STYLEA(0,ChartStyle,00001-8008-2353312); 以上语句把某个Table超文本传给控件,要求Lodop在400400px区域内用该表格数据画一个饼图(5代表饼图),图表的其它显示样式用一个19位的数字串来控制,当然这个数字串是用设计器的可

16、视操作产生的。控件目前可以实现折线图、柱状图、条形图、面积图、散点图、饼图、直线图、甘特图、箭头图、气泡图、几何图等11种常用图表,样式数字串可以控制图表的坐标、图例说明、节点标注、3D效果、背景渐变、个性标题等六类显示组合。 Lodop打印出来的图表,其清晰度和输出性能,是传统WEB图片打印方式望尘莫及的,另外图表除了被打印输出之外,还可以嵌入到正常WEB页面中显示,而实现起来如此轻松简单,有位用过该功能的开发人员说“简直是图表打印的一次革命!”,详见样例32。二、一行语句实现条码打印。类似如下语句: LODOP.ADD_PRINT_BARCODE(0,0,200,100,Code39,*1

17、23ABC4567890*);这行语句不用解释也能理解,其中Code39是条码类型,最后一个参数是条码值。打印区域可任意设置,控件会自动适应条码分辨率。除了Code39外,还可以实现128A、 128B、128C、EAN8、EAN13、EAN128A、EAN128B、AN128C 39Extended、2_5interleaved、2_5industrial、2_5matrix、UPC_A、UPC_E0、UPC_E1、 UPCsupp2、UPCsupp5、Code93、93Extended、MSI、PostNet、Codabar、QRCode等共计24种国内外常用的条码规制类型,其中最后一个类

18、型QRCode是二维码,其它都是一维码。 用本方式打印条码,除了语法简单之外,客户端机器不用安装专门的条码字体,服务器程序也不用浪费大量资源频繁生成条码图片,由于采用矢量直画方式,速度很快,清晰度和条码扫描准确率都很高,详见样例11。手把手教你用CAB发布OCX的简单办法CAB是一种文件压缩格式,把OCX文件(ActiveX插件)压缩成CAB文件是为了发布它,这种发布方式给人感觉“浏览器会自动安装该插件”,很多朋友钟情于此。目前流行很多压缩工具,但WINRAR这类工具生成的CAB文件浏览器无法识别。经过试用,发现用Windows系统文件CABARC来制作CAB是最简单有效的办法,下面以打印控件

19、Lodop为例,一步步了解制作CAB文件和部署发布的过程:第一步、判断操作系统是否有CABARC文件 判断途径如下:操作系统 开始-运行.-键入命令cmd-键入命令 CABARC,若显示一大段版本声明和命令选项的英文说明,表示系统存在CABARC,如果不存在可以从网上搜一个或者从这里下载,下载解压后放到操作系统目录下。第二步、准备ocx文件把打印控件Lodop的实体ocx文件复制到C:test目录下,并起名为Lodop.ocx。注:安装过Lodop的机器中,ocx文件存放在C:WINDOWSsystem32CAOSOFT_WEB_PRINT_lodop.ocx或Program FilesMou

20、ntTaiSoftwareLodop下。第三步、制作CAB文件在第一步的cmd窗口中,键入如下命令:CABARC -s 6144 N c:testlodop.cab c:testlodop.ocx该命令执行完毕后,在C:test目录下会看到新生成的Lodop.cab文件。在这行命令中,CABARC之后有五个参数值,参数之间用空格分隔,其中 -s 6144 俩参数表示生成的CAB文件以后可以进行代码签名,如果以后不想签名,该参数可以不加,代码签名是个很纠结的问题,以后细说。以上这步还有个简单办法,就是把该命令行字串用记事本复制到一个bat文件中,譬如起名CreateLodopCAB.bat,需要

21、生成CAB文件时双击该bat文件就可。该办法适合经常发布同一产品的不同版本。第四步、CAB文件的使用方式一 插件用CAB发布的最简单办法是页面object对象的codebase直接指向该CAB文件,把下面这段完整的超文本复制到一个html文件中,起名为demo.html: Lodop CAB File Test Page 把文件demo.html和第三步生成的lodop.cab放到同一个web目录下就ok了。以上这段代码应该很好理解,其中lodop.cab之前还可以包含web路径,也就是说插件可以单独部署,通过路径指向具体的部署位置。现在你把浏览器的URL通过web打开demo.html文件,

22、测试看看是否“自动安装”。第五步、CAB文件的使用方式二 页面还可以通过一个inf文件来发布插件,以便部署多个ocx,此时超文本变成如下: Lodop Test Page 其中lodop.inf是txt格式,内容如下:Add.Codelodop.ocx=lodop.ocxlodop.ocxfile=lodop.cabclsid=2105C259-1E0C-4534-8141-A753534CB4CARegisterServer=yesFileVersion=5,0,5,7这些代码还算好理解,不用累述。 以上简单几步就实现了网页插件的“自动安装”部署,但遗憾的是,在实践中这种安装非常“不自动”,因浏览器阻断而安装失败的几率很大。针对这种情况,无论是著名的Flash还是Lodop,都提供了exe格式的安装程序,让用户下载后执行安装。当然二者结合起来部署,则是不错的选择!

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!