aardio调用LODOP组件打印条码/吊牌
虽然aardio已经封装了tsclib库,但是兼容性和标签排版可控性较差,
同时也无法用于一些杂牌的条码打印机。
这里推荐另外一种方法,通过aardio调用浏览器端的lodop组件进行打印。
Lodop是什么呢?他是一个web打印控件,支持所有的浏览器,兼容ie8!
lodop的打印功能已经非常强大,兼容性很好,也在带web端的图形界面,可以供用户使用。在aardio中执行js函数,调用lodop打印。
使用lodop打印控件需要在本地安装打印插件,根据本地系统,32位系统的安装 " install_lodop32.exe " ,
如果是64位操作系统安装 " install_lodop64.exe " 首先在本地安装CLodop插件,官方下载http://www.lodop.net/download.html打开aardio,新建工程,拖入一个自定义custom控件
由于控件是不需要显示的,直接将其设置尺寸为0,0,并且隐藏。
工程目录下,新建文件夹,将html文件和Lodop的js文件放入。
在html文件中使用javascript配置Lodop参数。
具体参数解释请参考http://www.lodop.net/LodopDemo.html
LodopFuncs.js文件可以在官网下载http://www.lodop.net/faq/pp32.html
html文件代码如下,
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>打印预览</title> <script src='./LodopFuncs.js'></script> <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0> <embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0></embed> </object> </head> <body> <a href="javascript:ppreview()"><b>打印预览</b></a> <script> var LODOP; //声明为全局变量 function ppreview(code, name) { LODOP = getLodop(); LODOP.PRINT_INITA(0, 0, 378, 378, ""); LODOP.SET_PRINT_PAGESIZE(0, 1000, 1000, ""); LODOP.ADD_PRINT_TEXT(38, 69, 102, 31, name); LODOP.SET_PRINT_STYLEA(0, "FontSize", 19); LODOP.ADD_PRINT_TEXT(90, 69, 78, 16, "11"); LODOP.ADD_PRINT_BARCODE(126, 61, 239, 130, "QRCode", code); LODOP.SET_PRINT_STYLEA(0, "FontSize", 14); LODOP.PREVIEW(); }; </script> </body> <!-- http://demo.sinoverse.cn/lodop_print/--> </html>
可以给ppreview函数多设置几个参数,方便用aardio传参。
aardio代码:
import win.ui; import web.form; /*DSG{{*/ mainForm = win.form(text="aardio工程2";right=374;bottom=230) mainForm.add( button={cls="button";text="Button";left=95;top=35;right=215;bottom=82;z=2}; custom={cls="custom";text="自定义控件";left=23;top=21;right=56;bottom=55;hide=1;z=1} ) /*}}*/ var mb = web.form(mainForm.custom); //使用浏览器打开网页 mb.go("\page\1.html"); mainForm.button.oncommand = function(id,event){ mb.script.ppreview("111111111","姓名"); } mainForm.show(); win.loopMessage();
使用mb.script执行js函数并且传参给js代码。
运行后,可弹出标签预览窗口。可以选择打印机打印。
登录后方可回帖
感谢分享