`

web打印,web打印控件的三种实现方法

阅读更多

web打印,web打印控件的三种实现方法

做管理系统的时候,打印一直是个棘手的问题,做B/S的系统这个问题就更加突出了!下面举出三种常用的web打印处理方式

1、利用word或者excel来实现web打印(如果不修改ie设置,可以在web服务器端生成xls文件,然后通过xlBook = xls.Workbooks.Open(remotePath) 获取对象打印

   实现过程:先将需要打印的数据导入到word或者excel中,再利用word或者excel的打印功能来实现web打印。
   下面以excel为例实现如何打印的过程
   将网页中数据导入excel中的方法有很多,这里先介绍一种,利用ActiveX控件的方式,即 Excel.Application, 这个控件是MS为excel提供的编程接口,在很多种编程语言种都可以通过该接口来操纵excel表格。
   下面用javascript脚本来实现一个简单的例子。
< script language="javascript">

function ExcelPrint(){

var excelApp;//存放Excel对象

var excelBook;//存放Excel工件簿文件

var excelSheet;//存放Excel活动工作表

try{

excelApp = new ActiveXObject("Excel. Application");//创建Excel对象}

catch(e){

alert("请启用ActiveX控件设置!");

return;}

excelBook = excelApp.Workbooks.Add();//创建Excel工作簿文件

excelSheet = excelBook.ActiveSheet;//激活Excel工作表

var rowLen = printTable.rows.length;//table对象的行数

for (var i=0;i< rowLen;i++){

var colLen = printTable.rows(i).cells.length;//table对象的列数

for (var j=0;j< colLen;j++)//为Excel表的单元格赋值

excelSheet.Cells(i+1,j+1).value = printTable.rows(i).cells(j).innerText;} //将表格中的每个单元格的innerText导入到excel的单元格中

excelApp.Visible = true;//设置Excel对象可见}

excelSheet.PrintOut(); //打印工作表

excelBook.Close(true); //关闭文档

excelApp.Quit(); //结束excel对象

excelApp=null;  //释放excel对象

 

< /script>
  
   注意:
   运行该程序的前提是 IE要允许对没有标记为安全的Activex控件进行初始化和脚本运行。设置方法如下:
   打开控制面板→Internet选项→安全性→自定义级别→对没有标记为安全的ActiveX控件进行初始化和脚本运行→选中启用,这样我们的程序就可以 运行了。如果没有启用该ActiveX控件设置,那么程序在执行创建Excel对象时会抛出一个异常,这时可以通过catch()语句来捕获这个异常,并 且做出相应的处理。
   运行该程序必须客户端安装了MS EXCEL,否则Activex驱动不了。
  
  
  
2、利用浏览器自带的打印控件来实现web打印
   实现过程:直接调用IE的打印功能或者在程序中调用window.print()来实现web打印,页眉和页脚会有网页标题、页码、网址,日期等信息,这 些打印时如果不需要,怎样能去掉呢。做法其实很简单,只有在IE的文件菜单中打开页码设置对话框,去掉页眉页脚中设置的哪些信息,就可以了。但是这需要每 个客户端都去手动设置一次。如果不想让每个客户端都手动去设置一次,也可以用代码通过修改注册表的键值来实现。
   下面是用VBScript来实现的修改注册表的过程:
   < script language="VBScript">

dim path, reg

'path存放IE打印设置的注册表地址, reg存放WScript.Shell组件的对象

path = "HKEY_CURRENT_USER\Software\Micro-soft\Internet Explorer\PageSetup"

'通过注册表修改打印设置,只修改页眉、页脚和各边界的值

'参数说明:header--页眉,footer--页脚,margin_left--左边界

'margin_top--上边界,margin_right--右边界,margin_bottom--下边界

'页边距的设置中 1对应25.4mm,即margin_left=1表示实际值的25.4mm

function pagesetup(header, footer, margin_left, margin_top, margin_right, margin_bottom)

On Error Resume Next

Set reg = CreateObject("WScript.Shell")

if err.Number>0 then

MsgBox "不能创建WScript.Shell对象!"

exit function

end if

reg.RegWrite path+"\header", header'设置页眉

reg.RegWrite path+"\footer", footer '设置页脚

reg.RegWrite path+"\margin_left", margin_left'设置左边界

reg.RegWrite path+"\margin_top", margin_top'设置上边界

reg.RegWrite path+"\margin_right", margin_right'设置右边界

reg.RegWrite path+"\margin_bottom", margin_bottom'设置下边界

end function

< /script>

还有一点需要注意的是,利用window.print()这样的方法来打印,是直接弹出打印对话框,而不是打印预览的窗口。一般来说用户希望先打印预览一下,然后再打印。或者有的格式固定的,每次都是一样的格式,就希望不弹出打印对话框,直接就打印出来。
还有的用户希望每个打印都是直接和一种纸张绑定好,打印时候直接就调用那种类型的纸张来打印,这样window.print()显然远远不够。


3、利用第三方的控件或者报表软件来实现web打印
   实现过程:第三方控件将打印的参数和方法封装成对象,在页面中可以方便的直接调用,例如ScriptX.cab,ReYoPrint.cab 都是这种类型的控件。可以直接用代码实现web打印页眉页脚的设置,web打印纸张的绑定,web打印边距的设置,web打印预览,直接web打印。
   web打印格式设置,web打印分页,web打印换页重新打印某些信息,某些信息只能第一页打印,某些信息只能最后一页打印等等这些,也都解决方案。 Scriptx没有处理这些的方案,webprint有webgrid和ReYoPrint两种解决方案,行列规则的表格式的可以简单webgrid来处 理,复杂格式的可以用ReYoPrint来设计格式。

ReYoPrint目前还提供免费版.下载地址 http://www.interdrp.com

  • 大小: 167.6 KB
分享到:
评论

相关推荐

    web打印控件的三种实现方法

    web打印,web打印控件的三种实现方法 zz 做管理系统的时候,打印一直是个棘手的问题,做B/S的系统这个问题就更加突出了!下面举出三种常用的web打印处理方式

    C#实现简单的Web打印控件

    在本文中,我们将深入探讨如何使用C#语言实现一个简单的Web打印控件。Web打印控件对于Web应用程序来说是至关重要的,它允许用户在浏览器环境中直接打印网页内容,而无需通过复制粘贴到其他应用程序中。传统的Web打印...

    楚琳Web打印控件、源码、使用说明

    本文将详细介绍楚琳Web打印控件的主要特性、使用方法以及如何通过提供的源码进行二次开发。 首先,楚琳Web打印控件的核心功能在于它能够处理HTML内容的打印,允许用户在浏览器环境下无须下载任何额外插件就能完成...

    WEB打印控件很好用的WEB打印控件

    WEB打印控件WEB打印控件WEB打印控件WEB打印控件WEB打印控件WEB打印控件WEB打印控件WEB打印控件WEB打印控件WEB打印控件

    WEB 打印控件及实例

    【描述】:虽然描述信息为空,但根据标题和标签,我们可以推测这个资源可能包含了一个具体的WEB打印控件的实现和一个实例应用。博文链接可能提供了详细的技术实现和使用方法,包括如何在网页中集成该控件以及如何...

    免费web打印控件免费web打印控件

    Web打印控件是一种在网页上实现打印功能的技术解决方案,它允许用户无需下载任何客户端软件就能直接从浏览器打印网页内容。标题“免费web打印控件”指的是这样一种工具,它可以为网站提供无成本的打印功能,使得访问...

    一个完全免费的WEB打印插件控件,支持:C#/vb.net/asp/PHP/JSP,也有实例

    "一个完全免费的WEB打印插件控件,支持:C#/vb.net/asp/PHP/JSP,也有实例" 提供了一个解决方案,允许开发者在各种Web应用平台上实现便捷的打印功能。 这个插件控件兼容多种编程语言,如C#、VB.NET、ASP、PHP和JSP,...

    免费web打印控件最新

    在IT行业中,Web打印控件是一种重要的技术工具,它允许用户在网页上直接进行打印操作,无需通过浏览器的默认打印设置。"免费Web打印控件最新"可能指的是一个最新的、无需付费的解决方案,旨在提高用户体验并简化网页...

    web打印控件大全

    在IT行业中,Web打印控件是一种关键的技术工具,主要用于网页上的文档打印功能。"Web打印控件大全"这个资源集合,正如标题所言,可能是针对多种不同类型的Web打印控件的集合,旨在提供多样化的选择和实用解决方案。...

    WEB自定义打印模板控件OCX

    【WEB自定义打印模板控件OCX】是一种用于B/S(浏览器/服务器)和C/S(客户端/服务器)系统的自定义打印解决方案。该控件基于FastReport组件,并使用Delphi7进行开发,提供了OCX(OLE Control Extension)形式,使得...

    锐洋Java Web打印控件

    ePrint内含一个在vc7.0上开发的ActiveX控件(180k), 这个控件主要实现对打印参数的控制,eprint使用户通过JavaScript脚本可以控制自定义纸张尺寸,打印方向,页边距,打印份数,页眉,页脚,web打印分页等等属性 ...

    eprint3.0-web打印控件破解版

    erint3.0-web打印控件破解版,当初项目需要,在网上狂找了一晚,终于找到了这个很牛的web打印控件,能设定打印的高和宽,还能去掉弹出打印窗体等,设置横版或是竖版等。只有下了用了才能更好的理解

    使用ScriptX控件实现web打印

    本文将深入探讨如何利用ScriptX控件实现Web打印,并基于提供的`print_utils(横向打印).js`和`print_utils2(竖向打印).js`文件来讲解其核心概念和使用方法。 首先,ScriptX控件是基于ActiveX技术的,这意味着它...

    Web打印控件(目前最强大最专业最新版本)

    22.如何构建自己的纯WEB打印预览见样例二十二 23.如何居中打印超文本见样例二十三 24.如何选择界面皮肤见样例二十四 25.如何指定输出到哪页或仅预览见样例二十五 26.如何提高多页打印的性能见样例二十六 27.如何导出...

    楚琳Web打印控件.rar

    楚琳Web打印控件通过JavaScript或服务器端代码与网页交互,实现了在浏览器中直接调用打印服务的功能。用户可以自定义打印范围,包括选择打印整个页面、特定区域或者某个选定元素,避免了不必要的页面元素被一起打印...

    js web 打印 第三方打印控件免费版本

    本文将详细探讨使用JavaScript(js)进行Web打印,特别是关于“Lodop”这个免费版本的第三方打印控件。 首先,让我们了解一下什么是JavaScript Web打印。在浏览器环境中,JavaScript提供了`window.print()`函数,...

    web打印控件

    Web打印控件是一种在网页上实现打印功能的技术解决方案,它使得用户无需离开浏览器就能完成文档或页面的打印操作。在Web应用中,打印功能通常是一个不可或缺的部分,例如在线报告、电子发票或者各种需要物理输出的...

    web端打印控件

    在提供的文件列表中,我们可以看到多种资源,它们可能是实现web打印控件的组成部分: 1. `PrintSample10.css`:这是一个样式表文件,可能包含了针对打印的CSS规则,例如页面边距、布局调整和颜色管理等,确保打印...

    楚琳免费Web打印控件

    2、支持直接打印、支持套打、支持自定义纸张大小。 3、报表功能强大,报表设计采用FastReport,可以和水晶报表媲美。 4、方便的中国式报表的设计,可以快速而准确设计出报表中的表格线。 5、支持ASP, ASP.NET, PHP, ...

Global site tag (gtag.js) - Google Analytics