使用IEWebBrowser组件进行打印的总结

  项目中需要使用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>

 

  只要应用了蓝色代码部分的样式,则表头就会出现在每一页中。

 

你可能感兴趣的:(bean,Web,jsp,css,教育)