【Lodop】01 Lodop手册阅读上手
官方网站:
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 Files\MountTaiSoftware\Lodop目录下会生成两个实体文件:
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(/Windows\sPhone/i) !=null) return true;
if (ua.match(/iPhone|iPod/i) != null) return true;
if (ua.match(/Android/i) != null) return true;
if (ua.match(/Edge\D?\d+/i) != null) return true;
if (ua.match(/QQBrowser/i) != null) return false;
var verTrident=ua.match(/Trident\D?\d+/i);
var verIE=ua.match(/MSIE\D?\d+/i);
var verOPR=ua.match(/OPR\D?\d+/i);
var verFF=ua.match(/Firefox\D?\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(/Chrome\D?\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
另外一个特殊的计量单位“%(百分比)”,是指相对于纸张大小的百分比值,
其中“上、下边距、高度”等的百分比是相对于纸张高度(横向打印时则是宽度)的比值,
而“左、右边距和宽度”的百分比是相对于纸张宽度(横向打印时则是高度)的比值。
【Lodop】01 Lodop手册阅读上手的更多相关文章
- OpenDCIM-19.01操作手册
OpenDCIM-19.01操作手册 1. 界面标签解析 1.1 用户管理 用户管理 部门管理 用户管理被存在数据表fac_User中,包含以下字段: UserID:是管理员还是用户 Name:报表 ...
- SPI Flash Memory 芯片手册阅读
SPI Flash Memory 芯片手册阅读 信息来源
- FREERTOS 手册阅读笔记
郑重声明,版权所有! 转载需说明. FREERTOS堆栈大小的单位是word,不是byte. 根据处理器架构优化系统的任务优先级不能超过32,If the architecture optimized ...
- Shuffle'm Up 分类: 函数 POJ 查找 2015-08-09 17:01 6人阅读 评论(0) 收藏
Shuffle'm Up Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 7529 Accepted: 3466 Descript ...
- 多校赛3- Solve this interesting problem 分类: 比赛 2015-07-29 21:01 8人阅读 评论(0) 收藏
H - Solve this interesting problem Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I ...
- Drainage Ditches 分类: POJ 图论 2015-07-29 15:01 7人阅读 评论(0) 收藏
Drainage Ditches Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 62016 Accepted: 23808 De ...
- pascal矩阵 分类: 数学 2015-07-31 23:01 3人阅读 评论(0) 收藏
帕斯卡矩阵 1.定义 帕斯卡矩阵:由杨辉三角形表组成的矩阵称为帕斯卡(Pascal)矩阵. 杨辉三角形表是二次项 (x+y)^n 展开后的系数随自然数 n 的增大组成的一个三角形表. 如4 ...
- MATLAB格式化输出控制 分类: 数学 2015-07-31 23:01 3人阅读 评论(0) 收藏
MATLAB格式化输出控制 format 默认格式 format short 5字长定点数 format long 15字长定点数 format short e 5字长浮点数 format long ...
- 快速幂取模 分类: ACM TYPE 2014-08-29 22:01 95人阅读 评论(0) 收藏
#include<stdio.h> #include<stdlib.h> //快速幂算法,数论二分 long long powermod(int a,int b, int c) ...
- Hdu 1429 胜利大逃亡(续) 分类: Brush Mode 2014-08-07 17:01 92人阅读 评论(0) 收藏
胜利大逃亡(续) Time Limit : 4000/2000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Subm ...
随机推荐
- vue单个插槽
当子组件模板只有一个没有属性的插槽时,父组件传入的整个内容片段将插入到插槽所在的 DOM 位置,并替换掉插槽标签本身. # 子组件 <div> <h2>我是子组件的标题< ...
- 手动解压安装mysql8.0 on windows my.ini
1.解压"mysql-8.0.24-winx64.zip"到d:\Soft 2.在"D:\Soft\mysql-8.0.24-winx64"目录新建一个my.i ...
- readonly和disable的区别是什么?
Readonly和Disabled两种属性的写法如下: 1.<input type="text" name="name" value="xxx& ...
- Linux设置时区
引言 在linux安装好了过后,如果时区不正确,需要手动地对它设置我们需要的时区 设置 控制台输入tzselect,回车 tzselect 2.然后选择 5 "Asia" 亚州,回 ...
- Spring Cloud微服务核心架构分析
Spring Cloud是一个相对比较成熟的微服务框架.虽然,Spring Cloud于2016年才推出1.0的release版本, 时间最短, 但是相比Dubbo等RPC框架, Spring Clo ...
- QT6设置应用程序图标
准备好一个ico格式的图标, 放到源码文件中, 比如放在 resources/logo.ico 在源码目录中新建一个icon.rc的文件, 内容如下: IDI_ICON1 ICON DISCARDAB ...
- Linux 驱动:LED子系统
Linux 驱动:LED子系统 背景 在调试aw9523的时候,为了实现客户要的一个效果.需要修改驱动,但是大概看了一下驱动,但是因为不太熟悉LED子系统,所以有点云里雾里. 参考: https:// ...
- OpenCV程序练习(一):图像基本操作
展示一张图片 代码 import cv2 img=cv2.imread("demoimg.png") #读取图像 cv2.imshow("demoName",i ...
- 嵌入式必看!全志T113-i+玄铁HiFi4核心板硬件说明资料分享
目 录 1 硬件资源 2 引脚说明(篇幅问题,暂不提供详细内容) 3 电气特性 4 机械尺寸 5 底板设计注意事项 硬件资源 SOM-TLT113核心板板载CPU.ROM.RAM.晶振.电源.LED等 ...
- 2.SpringBoot快速上手
2.SpringBoot快速上手 SpringBoot介绍 javaEE的开发经常会涉及到3个框架Spring ,SpringMVC,MyBatis.但是这三个框架配置极其繁琐,有大量的xml文件,s ...