打印功能的实现
目前我用的是WebBrowser 的打印功能,把页面不需要的隐藏,然后通过下列方法打印。
document.all.WebBrowser.ExecWB(8,1) 页面设置
document.all.WebBrowser.ExecWB(7,1) 打印预览
document.all.WebBrowser.ExecWB(6,1) 打印
通过上面说的方式打印。想不需要通过打印设置,用代码写死打印参数,比例:字体在小、横纵响、边距、纸张大小等。
有别的打印方法也可以提供,不管理前台还是后台都可。谢谢!
[解决办法]
可以试一试这个控件
预览这些都有
DataPrinter.dll
[解决办法]
<script language="javascript" type="text/javascript"> var HKEY_Root, HKEY_Path, HKEY_Key; HKEY_Root = "HKEY_CURRENT_USER"; HKEY_Path = "\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"; //设置网页打印的页眉页脚为空 function PageSetup_Null() { try { var Wsh = new ActiveXObject("WScript.Shell"); HKEY_Key = "header"; Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, ""); HKEY_Key = "footer"; Wsh.RegWrite(HKEY_Root + HKEY_Path + HKEY_Key, ""); } catch (e){ }} function printpage(myDiv){ //DIV控制打印 //var newstr = document.all.item(myDiv).innerHTML; var newstr = document.getElementById(myDiv).innerHTML;// alert(newstr); var oldstr = document.body.innerHTML; document.body.innerHTML = newstr; window.print(); document.body.innerHTML = oldstr; return false; } function preview() { PageSetup_Null(); bdhtml=window.document.body.innerHTML; sprnstr="<!--startprint-->"; eprnstr="<!--endprint-->"; prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17); prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr)); window.document.body.innerHTML=prnhtml; window.print();} </script> <style> body { font-size: 16px; color: Black; } </style> <style media="print"> .Noprint { display: none; } .PageNext { page-break-after: always; } </style>
[解决办法]
好多帮助类,看自己需求拿相应方法。需要的多直接整个类拿来用,以后也方便
[解决办法]
http://blog.csdn.net/happy09li/article/details/6931959