官方网站:
http://www.c-lodop.com/index.html
版本:6.2.2.6
一、概述
Lodop是一款用于WEB打印开发的专业WEB打印控件
控件发布包有3个系统文件组成,主要功能用3个控件参数和2组功能函数来实现。
二、系统文件
Lodop发布包内主要有如下三个安装文件:
1、install_lodop32.exe 2、install_lodop64.exe 3、CLodopPrint_Setup_for_Win32NT.exe
前两个是打印控件安装文件,第三个是云打印服务安装文件。
建议页面综合部署,即部分浏览器采用控件,另外浏览器采用云打印,该选择过程由LodopFuncs.js里的needCLodop();引导实现。
C-Lodop云打印32位安装文件可以适用于32位或64位操作系统,更详细的安装使用请参考《云打印C-Lodop技术手册》。
下载地址:
http://www.c-lodop.com/download.html
install_lodop32.exe 和 install_lodop64.exe
这俩文件是lodop控件安装和升级的主程序文件,
install_lodop32.exe适用于32位浏览器,install_lodop64.exe适用于64位浏览器,提供给用户或开发者下载安装。
如果不特意拦截一般都能100%安装,对“网页插件安装难”有彻底改善。
如果将其复制或改名为uninstall_lodop32.exe (或uninstall_lodop64.exe)就可用来卸载控件。
Lodop安装后,在操作系统Program FilesMountTaiSoftwareLodop目录下会生成两个实体文件:
CAOSOFT_WEB_PRINT_LODOP.OCX
NPCAOSOFT_WEB_PRINT_LODOP.DLL
前一个是标准OCX文件,它是Lodop的功能核心,后者是一个NPPlugin文件,其作用是实现多浏览器支持。
目前Lodop支持:
IE系列、
IE内核系列(遨游、360、世界之窗、腾讯TT、搜狗等)浏览器,
Firefox(火狐)系列、
Chrome(谷歌)系列、
Opera系列、
Safari系列
等Windows下几乎所有的浏览器,通过云打印。
安装程序文件有几个预定参数:
-waitXX 该参数设置安装程序运行完毕后自动关闭窗口,这里的XX表示关闭前等待的秒数,如果是0秒则安装(或卸载)成功后立即关闭,例如: –wait8 -nowindow 该参数设置安装程序运行时不出现界面窗口(所谓的静默安装)。 -un 该参数使程序执行卸载操作,优先于文件名。 -in 该参数使程序执行安装操作,优先于文件名。
LodopFuncs.js
该文件是用来引导安装控件的一个JS文件,是个样例,但建议直接采用。
其中getLodop的任务是判断当前浏览器的类型并决定采用哪个对象实例,并检测控件是否安装、是否最新版本、并引导安装或升级,
加入了兼容C-Lodop云打印的检测信息。
文件主要内容如下:
//===判断是否需要安装CLodop云打印服务器(针对不支持np插件的浏览器)=== function needCLodop(){ try{ var ua=navigator.userAgent; if (ua.match(/WindowssPhone/i) !=null) return true; if (ua.match(/iPhone|iPod/i) != null) return true; if (ua.match(/Android/i) != null) return true; if (ua.match(/EdgeD?d+/i) != null) return true; if (ua.match(/QQBrowser/i) != null) return false; var verTrident=ua.match(/TridentD?d+/i); var verIE=ua.match(/MSIED?d+/i); var verOPR=ua.match(/OPRD?d+/i); var verFF=ua.match(/FirefoxD?d+/i); var x64=ua.match(/x64/i); if ((verTrident==null)&&(verIE==null)&&(x64!==null)) return true; else if ( verFF !== null) { verFF = verFF[0].match(/d+/); if ( verFF[0] >= 42 ) return true; } else if ( verOPR !== null) { verOPR = verOPR[0].match(/d+/); if ( verOPR[0] >= 32 ) return true; } else if ((verTrident==null)&&(verIE==null)) { var verChrome=ua.match(/ChromeD?d+/i); if ( verChrome !== null ) { verChrome = verChrome[0].match(/d+/); if (verChrome[0]>=42) return true; }; }; return false; } catch(err) {return true;}; }; … //====获取LODOP对象的主过程:==== function getLodop(oOBJECT,oEMBED){ … var LODOP; try{ … if (LODOP.VERSION<"6.2.0.3") { if (needCLodop()) document.documentElement.innerHTML=strCLodopUpdate+document.documentElement.innerHTML; else if (is64IE) document.write(strHtm64_Update); else if (isIE) document.write(strHtmUpdate); else document.documentElement.innerHTML=strHtmUpdate+document.documentElement.innerHTML; return LODOP; }; //===如下空白位置适合调用统一功能(如注册语句、语言选择等):=== //=========================================================== return LODOP; } catch(err) {alert("getLodop出错:"+err);}; };
关键点是VERSION函数,Lodop提供了这个“读版本号”功能,
这样控件的安装和升级任务就交给JS来实现,以下是控件在页面内的调用代码,
其中包含getLodop的使用:
<head> <title></title> <script language="javascript" 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> <script language="javascript"> var LODOP=getLodop(document.getElementById('LODOP_OB'),document.getElementById('LODOP_EM')); </script> … </body>
以上两段代码相互配合实现了Lodop的安装、调用和升级。
之所以将LodopFuncs.js作为一个资源文件来部署,既可以利用浏览器的缓存减少页面内容的重复下载,同时还实现了控件发布统一管理,
整个应用系统中只要这一个地方发布Lodop,其它页面直接拷贝嵌入第2段代码就可以了。
三、控件参数
Lodop有如下控件参数,以页面object对象元素的参数形式使用:
Caption
名称:设置控件的显示标题 格式:<param name="Caption" value="我是打印控件lodop"> 功能: 控件在页面内一般是以object元素形式被引用。可以通过设置元素的width和height等于0来隐藏控件,不隐藏时可以为控件设置一个标题,以便于看到控件是否被正确安装,以及控件对象在页面内的位置。希望打印预览界面或设计界面内嵌到网页内时,本参数很有用。 |
Color
名称:设置控件的显示区域颜色 格式:<param name="Color" value="#C0C0C0"> 功能:通过该参数设置控件显示区域的底色,对于希望打印预览界面或设计界面内嵌到网页内时,本参数可以让控件容易融于整体页面。 参数值采用超文本颜色形式,可以是三色16进制值组合,也可以是英文颜色名。 |
Border
名称:设置控件的显示区域边界 格式:<param name="Border" value="1"> 功能:通过该参数设置控件显示区域的边界,值等于1表示有边界,否则无边界。本参数可以让控件更融于整体页面。 |
四、功能函数
Lodop的功能函数不多,但参数比较复杂。
全部函数分“基本函数”和“扩展函数”两类,两类函数有类似性,
基本函数使用简单,达不到要求时请使用扩展函数,二者无本质区别。
[详细描述不赘述,实际应用再另开一篇单独详细分析]
五、软件使用权注册
打印控件Lodop是一款专业共享软件,公开发行版本没有功能限制,多数用户可免费长期使用,仅如下功能需要注册使用权:
1、 (不经过预览的)“直接打印”功能;
2、 “导出数据到Excel文件” 功能;
不经注册使用以上功能时,打印输出结果的左下角会出现“本页由【试用版打印控件LodopX.0】输出”小字样水印。
Lodop注册号的价格表、购买方式和使用方法见:
http://www.c-lodop.com/Lodop_Lic.html
六、打印维护和打印设计
打印设计的目标用户是软件开发者,详细功能解释略。
打印设计用到的快捷键:
ctrl 选中;
ctrl + delete 删除;
ctrl + 方向键 移动微调;
ctrl + 鼠标滑动 选中区域内打印项;
ctrl + 打印对象,同时拖拉一个对象就复制了;
打印对象列中按住ALT键的同时拖拉改变对象的顺序位置。
打印维护的目标用户是页面操作者,详细功能解释略。
七、使用样例
演示样例参见发行文件包及其技术手册可从如下地址下载:
http://www.c-lodop.com/download.html
http://www.mtsoftware.cn/download.html
八、计量单位
本文所述px单位固定换算关系如下,与像素类似但不是一个概念,也不受显示影响:
1in(英寸)=2.54cm(厘米)=25.4mm(毫米)=72pt(磅)=96px
另外一个特殊的计量单位“%(百分比)”,是指相对于纸张大小的百分比值,
其中“上、下边距、高度”等的百分比是相对于纸张高度(横向打印时则是宽度)的比值,
而“左、右边距和宽度”的百分比是相对于纸张宽度(横向打印时则是高度)的比值。