前一段时间公司一项目比较特殊,客户要求打印单必须是淘宝上卖的那种三联打印单。如果还是使用原来系统自带的打印的话,就会造成无法打印出来理想的效果,于是找了下相关的打印控件,比较网络上比较流行的几款插件,最终发现,还是Lodop比较好用一些。下面写下它的基本用法。

1、准备工作,下载控件及官方demo

下面给出官方的下载地址:http://www.lodop.net/download.html

2、基本使用

由于Lodop控件是一个exe程序,所以第一次使用的时候,需要提示用户安装这个控件(控件大小在2M左右),注意Lodop根据操作系统类型不同(X86还是X64),分为install_lodop32.exe 和install_lodop64.exe

(1)提示用户安装控件

在页面的head标签内,写下如下代码:

注意:/ControlPackage/Lodop 这个目录是我自己创建的目录,如果你自己使用,可修改为自己的目录

function CheckIsInstall() { 
try { 
var LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM')); 
if ((LODOP != null) && (typeof(LODOP.VERSION) != "undefined")) { 
alert("本机已成功安装过Lodop控件!
 版本号:" + LODOP.VERSION); 
} 
} catch (err) { 
//alert("Error:本机未安装或需要升级!"); 
} 
};

具体调用代码:

<input type=”button” value=”检查是否安装打印控件” onclick=”JAVASCRIPT: CheckIsInstall()” />

(2)打印页面内容

由于我打印的内容是一个form表单下的table表格,所以调用的是ADD_PRINT_TABLE,这个函数,如果大家打印html或者其他可以参考这篇文章——lodop相关参数和讲解。

注意:打印的内容的样式,一定要直接写在页面上,不要使用css样式

下面贴出来打印form1表单的table标签内容的js代码。

var LODOP; //声明为全局变量 
function prn1_preview() { 
CreateOneFormPage(); 
LODOP.PREVIEW(); 
}; 
function CreateOneFormPage() { 
LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM')); 
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_表单一"); 
LODOP.SET_PRINT_STYLE("FontSize", 14); 
LODOP.SET_PRINT_STYLE("Bold", 1); 
LODOP.ADD_PRINT_TABLE("5mm", "0mm", "230mm", "140mm", document.getElementById("form1").innerHTML); 
};

打印内容:

<input id=”btnPrint2″ value=”打 印” type=”button” onclick=”javascript: prn1_preview()” />