web打印详解
在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>