项目中需要使用web页面的打印功能,所以选用了IEWebBrowser组件,下面总结一下使用到的内容:
直接在JSP页面中添加如下代码,就可以使用了:
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>
<input name=Button onClick=document.all.WebBrowser.ExecWB(1,1) type=button value=打开>
<input name=Button onClick=document.all.WebBrowser.ExecWB(2,1) type=button value=关闭所有>
<input name=Button onClick=document.all.WebBrowser.ExecWB(4,1) type=button value=另存为>
<input name=Button onClick=document.all.WebBrowser.ExecWB(6,1) type=button value=打印>
<input name=Button onClick=document.all.WebBrowser.ExecWB(6,6) type=button value=直接打印>
<input name=Button onClick=document.all.WebBrowser.ExecWB(7,1) type=button value=打印预览>
<input name=Button onClick=document.all.WebBrowser.ExecWB(8,1) type=button value=页面设置>
<input name=Button onClick=document.all.WebBrowser.ExecWB(10,1) type=button value=属性>
<input name=Button onClick=document.all.WebBrowser.ExecWB(17,1) type=button value=全选>
<input name=Button onClick=document.all.WebBrowser.ExecWB(22,1) type=button value=刷新>
<input name=Button onClick=document.all.WebBrowser.ExecWB(45,1) type=button value=关闭>
但是当我进行打印预览时发现并非所有的网页内容都是需要打印的,所以采用以下方式将不需要打印的内容排除在外:
<style type="text/css" media=print>
.noprint{display : none }
.PageNext{page-break-after: always;}
</style>
<p class="noprint">
不需要打印的内容
</p>
使用这种方式就可以将不需要打印的内容屏蔽掉。
那上面还有一个PageNext样式有什么作用,答案是分页时使用,我们可以在需要打印分页的地方添加如下代码:
<div class="PageNext"></div>
遇到上述标记,就会进行分页打印。
另外,在我的打印功能中还遇到了一个问题,那就是分页表头的问题,我发现只有第一页有表头,而第二页开始就没有表头了,采用以下方法可解决此问题,使打印的每一页都具有相同的表头:
<thead style="display:table-header-group;font-weight:bold">
<tr><th colspan="13"><b style="font-size:15px;">工人入场三级安全教育考核汇总登记表</b></th></tr>
<tr>
<th colspan="5"><b style="font-size:13px;">单位:<bean:write name="workerForm" property="unit.unitName" /></b></th>
<th colspan="4"><b style="font-size:13px;">登记日期:<bean:write name="workerForm" property="unit.registerDate" format="yyyy-MM-dd"/></b></th>
<th colspan="3"><b style="font-size:13px;">编号:<bean:write name="workerForm" property="unit.unitId" /></b></th>
</tr>
<tr>
<th><b style="font-size:13px;">序号</b></th>
<th><b style="font-size:13px;">姓名</b></th>
<th><b style="font-size:13px;">性别</b></th>
<th><b style="font-size:13px;">年龄</b></th>
<th><b style="font-size:13px;">工种</b></th>
<th><b style="font-size:13px;">籍贯</b></th>
<th><b style="font-size:13px;">身份证号码</b></th>
<th><b style="font-size:13px;">教育考核时间</b></th>
<th><b style="font-size:13px;">考核成绩</b></th>
<th><b style="font-size:13px;">教育卡号</b></th>
<th><b style="font-size:13px;">照片</b></th>
<th><b style="font-size:13px;">操作</b></th>
</tr>
</thead>
只要应用了蓝色代码部分的样式,则表头就会出现在每一页中。
分享到:
相关推荐
总结,IEWebBrowser组件是开发Windows应用程序时的强大工具,它提供了丰富的功能和灵活的交互方式,使得桌面应用能够无缝地集成Web内容。通过深入理解和熟练掌握其用法,开发者可以构建出更强大、更易用的应用程序,...
### iewebbrowser组件的execwb方法 #### 组件简介 `iewebbrowser`组件是Microsoft为嵌入Internet Explorer浏览器到应用程序中而提供的一种ActiveX控件。它允许开发者通过编程方式来控制一个完整的IE浏览器实例,...
在提供的文件"IE内置的WebBrowser控件之--WEB打印.html"中,可能包含了使用WebBrowser控件进行打印的示例代码。这个HTML文件可能用于展示如何在客户端通过JavaScript或者其他方式触发WebBrowser控件的打印功能。 ...
### 调用IE内置打印组件完成Web打印方案及例程 #### 一、概述 在Web开发领域,实现网页内容的打印功能是一项常见的需求。本文档将详细介绍如何利用Internet Explorer(IE)浏览器内置的打印组件来实现网页内容的...
7. **WebBrowser组件的其他用途**: WebBrowser控件不仅用于打印,还可以执行诸如打开、关闭、保存网页、刷新页面、撤销操作、全选内容等多种功能,如`WebBrowser1.ExecWB(1,1)`打开网页,`WebBrowser1.ExecWB(22,1...
- 使用IE6.0内置的打印模板控制页边距、页眉、页脚、纸张等,影响打印效果。打印模板允许自定义预览窗口和打印格式。 4. **打印操作的实现** - 通过WebBrowser控件提供的函数接口执行打印、打印预览和页面设置。...
JavaScript(JS)是一种广泛用于网页和网络...二、IEWebBrowser组件 在Internet Explorer浏览器中,可以使用ActiveX对象`WebBrowser`来访问更高级的打印功能。以下是一些利用此组件实现的打印控制按钮示例: ```html ...
WEBBrowser控件是Windows Forms和WPF应用程序中用于在应用程序内嵌入Web浏览功能的组件。这个控件允许开发者在他们的应用中集成网页显示、网页交互以及执行HTML文档的功能,而无需依赖外部浏览器进程。本篇文章将...
3. 错误处理:在使用`WebBrowser`控件时,需对可能出现的异常进行捕获和处理,如网络错误、页面加载失败等。 总结,`WebBrowser`控件在C#开发中扮演着重要角色,它可以方便地在桌面应用中集成网页浏览功能,但同时...
#### 六、利用.NET组件打印 .NET Framework提供了一系列用于处理XML数据的组件和技术,其中包括XSLT转换引擎,可用于将XML数据转换成HTML或其他格式以供打印。 - **优点**:适合格式多变、数据量小的应用场景。 - ...
总结来说,Web打印实例中,jQuery提供了一种轻量级且易于实施的解决方案,适用于大部分现代浏览器,而VB插件则提供了更深度的控制,尤其适合那些需要与服务器端交互或有特定打印需求的应用。两者各有优势,开发者应...
传统Web报表打印技术如纯ActiveX、Applet方式和利用IE自带的WebBrowser控件各有优缺点。纯ActiveX具有较好的跨平台兼容性和高精度,但可能影响用户体验且控件较大。Applet虽然可以实现精确打印,但效率较低,需要...
今天,我们将探讨三种使用 JavaScript 实现页面打印的方法,每种方法都有其特点和局限性,我们将逐一进行介绍和分析。 方法一:使用 window 对象的 print 方法 第一个方法是使用 window 对象的 print 方法,这是最...
WinForm WebBrowser控件是.NET Framework提供的一种用于在Windows Forms应用程序中嵌入Web浏览器功能的组件。这个控件允许开发者在桌面应用中显示网页内容,与用户交互,并执行一些基本的网页操作,如导航、前进、...
WebBrowser控件是IE内核的一个组件,能处理各种Web相关的任务,如加载网页、执行JavaScript、打印、导航等。MFC浏览器的改进可能涉及对CHtmlView的扩展,以增强其功能,例如添加书签、历史记录管理、下载管理等。 *...
在Windows Forms(Winform)应用开发中,有时我们需要将网页的内容转换为图片,例如用于...这个过程涉及Windows API的调用、GDI+图形操作以及COM组件的使用,为开发者提供了一种在桌面应用程序中保存网页快照的途径。