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代码。
运行后,可弹出标签预览窗口。可以选择打印机打印。
登录后方可回帖
感谢分享