首页 > 技术文章 > web打印详解

yabisi 2016-12-03 15:25 原文

在B/S模式开发中,打印是个很大的困扰.无论是采用页面直接输出或者引用WORD.DLL也好,都有不足之处.

目前最好的办法就是采用第三方控件,网上流传的打印控件有很多.总结了下推荐几个给大家:

一、首先是 jatoolsPrinter 免费版(强烈推荐)

地址:http://printfree.jatools.com/

具体的使用方法 可以参考这边:http://print.jatools.com/guide.htm

本人研究半天之后始终不完美因为只支持ie浏览器和基于ie浏览器内核的浏览器,虽然360、腾讯等浏览器装机量很大也是基于ie内核的,但是他们的极速模式不是基于ie的极速模式下不能使用,最终放弃了。

二、lodop

 下载地址:lodop

下载解压之后将以下文件

拷贝到项目中之后修改.js中的文件路径

页面的头部部分加入以下代码:

<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
   
   <script language="javascript" src="lib/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>
    <script type="text/javascript">
        var LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM'));

    </script>
</head>

 

<script language="javascript" type="text/javascript">   
    var LODOP;
    function prn1_preview() {    
        CreateOneFormPage();    
        LODOP.PREVIEW();    
    };
    
    function CreateOneFormPage() {
        LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM'));
        //LODOP=getLodop();  
        LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_表单一");
        

        LODOP.SET_PRINT_STYLE("FontSize",18);
        LODOP.SET_PRINT_STYLE("Bold",1);
        //LODOP.ADD_PRINT_TEXT(1, 2, 260, 39, "打印页面部分内容");
        //ADD_PRINT_HTM(intTop,intLeft,intWidth,intHeight,strHtml)增加超文本项
        LODOP.ADD_PRINT_HTM("0%", "10%", "100%", "100%", document.getElementById("mytaboneyc").innerHTML);
    };                         
    
</script>

 

推荐阅读