打印之Lodop

前序

  前面遇到一个问题:在线打印合同。通过各方查找资料和请教他人,终于完美的解决了这个问题。其中的解决方案,可以查看:http://www.cnblogs.com/zcy-xy/p/4290436.html。其中只详细简单介绍了一些方法,希望能给你点思路。其实在后面实现打印时,遇到了很多问题,现在就一一列举。

    一、浏览器自带打印

      浏览器自带打印确实既方便又简单。其实对于打印我们都很熟悉,最终打印时都是一张图片。那么在调用浏览器自带打印时,它会自动针对当前页面生成一张图片来实现打印。但是会存在一个问题,打印设置的问题。对于我们来说,这单常识还是有的,但是有时候真的要把用户想成电脑白痴,不会任何操作。那么现在这种办法肯定不能实现。

    二、Lodop在线打印

      关于前面在线打印问题的解决方法中,提到关于lodop。当时因为合同模板过多,内容过多而放弃了。后来在打印时,仔细研究了许久。查看了相关文档,防线lodop在打印方面确实比较方便。下面是一些使用心得,和大家分享一下。

       这里打印时,我采用的是在图片显示加载信息,lodop只实现打印。首先我们需要在官网下载相关的文件,地址:http://www.lodop.net/download.html

lodop打印实现

  1.首先在页面引用下载包中的LodopFuncs.js文件。

  2.根据当前的操作系统选择安装install_lodopxx.exe文件,只有安装此文件才能在页面打印预览时实现。LodopFuncs.js自带验证是否安装此插件。

  3.lodop全部是由js实现的,那么下面来开始js的实现。这里我只简单的实现打印的功能。若要详细的信息,请访问官方网站或者查看技术手册

  

 1 var LODOP; //声明为全局变量
 2     $(document).ready(function () {
 3             //验证当前是否已经安装插件
 4             LODOP = getLodop();
 5         });
 6
 7     // 打印预览 ,此功能可以在一个编辑页面中,编辑你要的样式,点击规避后会弹出相关当前的设置
 8         function prn1_preview() {
 9             CreateOneFormPage();
10             LODOP.PREVIEW();
11             //alert(LODOP.PRINT_DESIGN());
12         };
13         // 直接打印
14         function prn_print() {
15             CreateOneFormPage();
16             LODOP.PRINT();
17         };
18         // 创建打印页面
19         function CreateOneFormPage() {
20             LODOP = getLodop();
21             LODOP.SET_PRINT_STYLE("FontSize", 18);
22             LODOP.SET_PRINT_STYLE("Bold", 1);
23             LODOP.ADD_PRINT_URL(-16, -21, 800, 5000, url);
24         };

  这里我只用到了lodop的定点和直接打印。lodop其实包括,自己设计模板,并给对应的做点填充值,并且实现多中打印方式,如:传入html,URL等。这里就不赘述。有兴趣的朋友可以了解一下。这里主要是给大家分享一个插件。希望对你有帮助。若有兴趣大家下来可以相互的交流一下。

时间: 2024-10-01 13:28:57

打印之Lodop的相关文章

[原创]Lodop打印, 以及Lodop引用css文件控制打印样式的问题.

最近在做Lodop打印功能: 思路是:  用MasterPage搭个打印页面的框架, 然后在具体的页面中填入数据, 打印的样式由母版页和CSS来控制. 困扰了一天的问题是:  在打印的JS文件中, 引用外部css文件时, 需要拼出实际的含有IP地址的CSS文件地址, 并且需要用双斜杠(//)来代替单斜杠. 代码如下: //母版页, 注意:  url的拼接形式 <input id="hidCssRef" name="hidCssRef" type="h

打印函数 lodop

Lodop属性和方法详解 例子: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);LODO

打印插件lodop

应用场景:合同套打 1.合同模板管理(主要对合同的内容,生成动态模板vm文件) 2.每次点打印的时候,查询该合同对应的模板以及合同实例,生成对应的html文件 3.前端页面引入LodopFuncs.js 4.代码设定,将生成好的html文件返回之后调研如下方法就可以 var LODOP; //声明为全局变量                          function myPreview(html) {                 LODOP = getLodop();        

记录--java web 打印(lodop)案例

<script language="javascript" src="../res/lodop/LodopFuncs.js"></script> <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0> <embed id="LODOP_EM&quo

利用lodop打印控件轻松实现批量打印

最近在做一个打印程序,要实现批量打印功能,在网上找了很多天,也在tp官网咨询大牛们,对大家的的提议我一一进行了研究,总结如下:要实现批量打印可以有两个办法: 一是利用专业的报表程序,能实现十分复杂的需求,但学习报表也是很痛苦的一件事,我专心研究了一天都没啥进展,也许我实在太菜了.这种方法推荐锐浪报表,免费还好用. 二是利用js插件实现,也在网上找了很多,最后感谢hunduncn,他建议我使用lodop(详见:http://www.thinkphp.cn/topic/12938.html),由于对

Web打印控件Lodop

将如下代码添加到页面: <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" hei

web在线打印,打印阅览,打印维护,打印设计

winform打印的方案比较多,实现也比较容易,而且效果也非常炫:但现在越来越多的系统是web系统,甚至是移动端.网上也有非常的web打印方案,但各式各样的问题非常多,比如js兼容性,稳定性等一直缠绕着众多的程序员,或者就是web 打印需要浏览器安装 ActiveX 组件,ActiveX安装不容易成功等等问题. 下面我们来看一种web在线阅览,在线编辑,在线打印的解决方案,Lodop这一款在线打印工具在各版本浏览器的兼容性表现不错,功能方面,我们常用的打印阅览,打印设计,打印机设置等他都提供了,

基于MVC+EasyUI的Web开发框架经验总结(16)--使用云打印控件C-Lodop打印页面或套打报关运单信息

在最新的MVC+EasyUI的Web开发框架里面,我整合了关于网购运单处理的一个模块,其中整合了客户导单.运单合并.到货扫描.扣仓.出仓.查询等各个模块的操作,里面涉及到一些运单套打的操作,不过由于之前介绍LODOP不兼容Chrome等浏览器,因此曾经想放弃这个控件的打印处理,不过他们及时推出了"云打印控件C-Lodop",而且对之前的接口几乎完全兼容,因此在框架里也继续沿用了这个控件来进行相关的打印处理,包括常规的打印和运单信息套打等处理. 1.控件的安装 这个云控件C-Lodop(

Lodop6 以上打印控件使用,详参考自带说明文档,打印样式及文字大小要特殊设置一下

<link href="../css/cssprint.css" rel="stylesheet" /> <script src="../Lodop/LodopFuncs.js"></script> <style id="style1"> table { font-size: 9pt; font-weight: normal; color: #000000 ; text-deco