例子:
LODOP.PRINT_INIT(“打印任务名”);
LODOP.SET_PRINT_COPIES(2);
bdhtml=window.document.body.innerHTML;
var hei = $(’#div1’).outerHeight();
string = prnhtml;
LODOP.SET_PRINT_PAGESIZE (3,‘6cm’,‘2cm’,2);
LODOP.ADD_PRINT_HTM(0,0,227,hei,string);
LODOP.SET_PRINTER_INDEXA(-1)
LODOP.PRINT();
Lodop发布包内主要有如下几个文件:
install_lodop.exe
该文件是控件安装和升级的主文件,提供给用户或开发者下载安装,如果不特意拦截一般都能100%安装,对“网页插件安装难”有一定改善。如果将其复制或改名为uninstall_lodop.exe (名前加un)就可用其卸载控件。
Lodop安装后,在操作系统目录WINDOWS\system32下会安装两个实体文件:CAOSOFT_WEB_PRINT_LODOP.OCX和NPCAOSOFT_WEB_PRINT_lodop.dll,前一个文件是OCX文件,后者是Npplugin文件,其作用是实现多浏览器支持。目前Lodop支持IE系列、IE内核系列(遨游、360、世界之窗、腾讯TT、搜狗等)浏览器,以及Firefox(火狐)系列、Chrome(谷歌)系列、Opera系列、Safari系列等Windows下几乎所有的浏览器。
程序文件有几个预定参数:
-waitXX该参数设置安装程序运行完毕后自动关闭窗口,这里的XX表示关闭前等待的秒数,如果是0秒则安装(或卸载)成功后立即关闭,例如:–wait8
-nowindow 该参数设置安装程序运行时不出现窗口。
-un 该参数使程序执行卸载操作,参数优先于文件名。
-in 该参数使程序执行安装操作,参数优先于文件名。
安装界面如下:
LodopFuncs.js
该文件是用来引导安装控件的一个JS文件,是个样例,但建议直接采用。其中getLodop的任务是判断浏览器的类型并决定采用哪个对象实例,并检测控件是否安装、是否最新版本、并引导安装或升级。文件内容如下:
func tion getLodop(oOBJECT,oEMBED){
var strHtml1="
< fo nt color="#FF00FF">打印控件未安装!点击这里执行安装,安装后请刷新页面或重新进入。";
var strHtml2="
< fo nt color="#FF00FF">打印控件需要升级!点击这里执行升级,升级后请重新进入。";
var strHtml3="
< fo nt color="#FF00FF">(注:如曾安装过Lodop旧版附件npActiveXPLugin,请在【工具】->【附加组件】中先卸载它)";
var LODOP=oEMBED;
try{
if (navigator.appVersion.indexOf(“MSIE”)>=0) LODOP=oOBJECT;
if ((LODOPnull)||(typeof(LODOP.VERSION)“undefined”)) {
if (navigator.userAgent.indexOf(‘Firefox’)>=0)
docu ment.docu mentElement.innerHTML=strHtml3+docum ent.docum entElement.innerHTML;
if (navigator.appVersion.indexOf(“MSIE”)>=0) document.write(strHtml1); else
docu ment.docume ntElement.innerHTML=strHtml1+docu ment.docume ntElement.innerHTML;
} else if (LODOP.VERSION<“6.0.0.1”) {
if (navigator.appVersion.indexOf(“MSIE”)>=0) document.write(strHtml2); else
docu ment.docum entElement.innerHTML=strHtml2+docu ment.docume ntElement.innerHTML;
}
//如下空白位置适合调用统一功能:****
//*******************************************
return LODOP;
}catch(err){
docu ment.documen tElement.innerHTML=“Error:”+strHtml1+docum ent.docume ntElement.innerHTML;
return LODOP;
}
}
其中的关键点是VERSION函数,Lodop提供了这个“读版本号”功能,这样控件的安装和升级任务就交给JS来实现,以下是控件在页面内的调用代码,其中包含getLodop的使用:
< scri pt lang uage=“javas cript” src=http://www.likecs.com/“Lodop Funcs.js” >
< object id=“LODOP” classid=“clsid:2105C259-1E0C-4534-8141-A753534CB4CA” width=“0” height=“0” >
< emb ed id=“LODOP_EM” type=“application/x-print-lodop” width=“0” height=“0” >
< scr ipt="" language=“javascript” >
var LODOP=getL odop( document.getEle mentById(‘LODOP’),docu ment.getElem entById(‘LODOP_EM’)) ;
< /sc ript >
…
以上两段代码相互配合实现了Lodop的安装、调用和升级。之所以将LodopFuncs.js作为一个资源文件来部署,既可以利用浏览器的缓存减少页面内容的重复下载,同时还实现了控件发布统一管理,整个应用系统中只要这一个地方发布Lodop。其它页面直接拷贝嵌入第2段代码就可以了。
三、控件参数
Lodop有如下控件参数,以页面object对象元素的参数形式使用:
Caption
名称:设置控件的显示标题
格式: < pa ram name=“Caption” value=“我是打印控件lodop” >
功能: 控件在页面内一般是以object元素形式被引用。可以通过设置元素的width和height等于0来隐藏控件,不隐藏时可以为控件设置一个标题,以便于看到控件是否被正确安装,以及控件对象在页面内的位置。希望打印预览界面或设计界面内嵌到网页内时,本参数很有用。
Color
名称:设置控件的显示区域颜色
格式: < par am name=“Color” value="#C0C0C0" >
功能:通过该参数设置控件显示区域的底色,对于希望打印预览界面或设计界面内嵌到网页内时,本参数可以让控件容易融于整体页面。
参数值采用超文本颜色形式,可以是三色16进制值组合,也可以是英文颜色名。