编程社区 » asp编程 » 网页打印,如何自动去除页眉页脚!!!

网页打印,如何自动去除页眉页脚!!!


oly2000



 发表:

网页打印,如何自动去除页眉页脚!!!


我反复在网上查了相关资料,使用以下源码,但在有的电脑上打印,却无法将页眉页脚去除!!
谁能帮我.
<script language="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 PageSetup_Default()
{
try
{
var Wsh=new ActiveXObject("WScript.Shell");
HKEY_Key="header";
Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b页码,&p/&P");
HKEY_Key="footer";
Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&u&b&d");
}
catch(e){}
}
</script>
<input type="button" value="清空页码" onclick=PageSetup_Null()>
<input type="button" value="恢复页码" onclick=PageSetup_Default()>


dave2024
回复:

是操作系统禁止网络修改注册表,直接手工修改IE设置或注册表。
IE设置:打印>页面设置……>;把页眉“&w&bPage &p of &P”、页脚“&u&b&d”,晴空;

riubin
回复:

推荐两个好控件:
第一个要收费,不过只改页眉页脚是免费的
http://www.meadroid.com/scriptx/

第二个是完全免费的,不过没有数字签名,也不太好看,但是你可以解包自己改一下
http://print.jatools.com/

sibang
回复:

http://hi.baidu.com/see7di/blog/item/7dca1a238bd3594f93580742.html

huangqicai110
回复:

mark~~

sibang
回复:

B/S程序中WEB打印的完美解决方案2007年03月19日 星期一 上午 01:02方案一:ScriptX打印组件
方案二:WsReport打印组件

我们首先来说一下方案一:
听说这个组件已经是2006年的事情了,那时候自己为了开发一个事业单位的办证系统用到了定制格式打印功能,为了解决此问题,因此在破解了wsreport组件,并且在CSDN中对外公布了出来,没想到这一公布颇具波澜,很多朋友纷纷向我索要此组件,其中有一位朋友提到了这个scriptx,说其功能如何强大,可惜是美国人开发的,读不懂英文,所以没有办法使用。因此让我来研究一下,但是一直以来我的时间一向比较紧迫,所以直到今天用到此组件的时候才不得已啃了这块硬骨头,当你进入scriptx的官方网站的时候,看了他的使用说明会让你一头雾水,莫不这头脑,并且如果按照他提供的实例程序来运行测试程序,也是根本就不能通过的,看了半天让我晕晕乎乎的摸不着北。
最后不得已,只有放弃官方的使用说明,然后结合自己的经验进行测试,当然结果是可想而知的,最终是成功了。我所采用的方法是仅仅使用官方提供的最新版本的.cab文件,cab文件是一个封包文件,该文件往往包含多个文件在其内,即通常所说的客户端activex,当用户第一次浏览网站的时候,该cab文件会自动下载并安装到客户端的电脑上,务须在服务器端注册,因此使用非常简单。闲话少叙,言归正传,让我们首先去官方下载cab文件,然后看如下代码就明白了。

<!--这里调用控件ScriptX.cab-->
<object id="factory" style="DISPLAY: none" viewastext classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814" codebase="http://www.a.com/smsx.cab#Version=6,3,434,26"></object>
<SCRIPT defer>
//用于设置打印参数
function printBase() {
factory.printing.footer = "页眉" //页眉
factory.printing.footer = "页脚" //页脚
factory.printing.portrait = false //true为纵向打印,false为横向打印
factory.printing.leftMargin = 1.5 //左页边距
factory.printing.topMargin = 0.5 //上页边距
factory.printing.rightMargin = 0.5 //右页边距
factory.printing.bottomMargin = 1.0 //下页边距
}

//用于调用设置打印参数的方法和显示预览界面
function printReport(){
printBase();
//window.print();
factory.printing.Preview();
}

//使界面最大化
maxWin();
function maxWin()
{
var aw = screen.availWidth;
var ah = screen.availHeight;
window.moveTo(0, 0);
window.resizeTo(aw, ah);
}
</SCRIPT>
<table width="100%" border="0" cellspacing="0" cellpadding="0" align="center" bordercolor="#FFFFFF">
<tr bordercolor="#FFFFFF">
<td >
<table width="70%" border="0" cellspacing="0" cellpadding="2" align="center">
<tr>
<td align="center"><font size="5" face="宋体"><b>查询打印</b></font></td>
</tr>
<tr>
<td align="center">
<div id="divReport" name="divReport">
<input type="button" name="cmdPRINT" id="cmdPRINT" onclick="printReport()" value="打印">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="button" onclick="window.close();" value="关闭">
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>

在上边的代码中,大家需要注意以下<object id="factory" style="DISPLAY: none" viewastext classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814" codebase="http://www.a.com/smsx.cab#Version=6,3,434,26"></object>
这段代码用来加载cab文件,clsid和codebase必须要和你下载的cab中的信息对应,否则组件会加载错误,这两项其实不难找,只要你用winrar打开你下载的cab文件,然后找到扩展名是.inf的文件,然后打开之,就能看到了。
使用范围:该组件针对打印大篇幅的文档非常好,对于那些对打印定位要求不是非常严格的东西。但是如果用它来打印增值税专用发票或者打印支票就不可以了。因为增值税专用发票类的东西对定位的要求非常的严格,那么这些东西我们用什么组件来打印呢?方法在下边,让我们看一下方案二就知道了。

我们再来看一下方案二:
wsreport这个组件可以用来打印对定位要求非常严格的内容,例如增值税专用发票,既然定位准确,那么控制的时候肯定就有难度,不过没关系,这个组件附带详细的使用说明,并且保证你能够看懂,呵呵,因为是国人开发的。不过这个组件是需要注册的,,非注册版本不能打印连续的分页,另外打印出来的文档永远都有“试用”二字,如果你想突破这些限制,那就自己破解吧,不要向我索要。



相关文章
各位老师!菜鸟请教个问题
textarea与select框的问题,又一个问题来了~~~
购物车的问题
如何实现购物车商品颜色和大小的提交?
如何获得一个网址字符串中的关键部分?
怎么利用ASP打开本地文件
关于记录读取
一个简单的邮件发送问题
求一AJAX+ASP的注册模块源码
在ASP中,怎么才能得到用户是从那个网址过来的!
asp上传的图片被替换,是否被黑
新手请教: 同时插入多行出现的问题?
热门文章
输入地址时http://192.168.01/default.asp能正常使用,但是用http://192.168.0.1/则只能显示首页
请高手帮解密
请问如何给select控件赋值,让他指定跳到某一个值。在线等
关于asp的server.URLEncode()后如何得到utf-8的问题
如何将文件保存为UTF8格式
由于该控件目前不可见、未启用或其类型不允许,因此无法将焦点移向它。
哪位大哥大姐能详细的说说关于“WinHttp.WinHttpRequest”组件的使用啊?
如何实现选择下拉菜单后在文本框中显示相应的值
如何用javascript做表单验证程序.
http/1.1 503 Service Unavailable
ASP导入Excel数据
网页打印,如何自动去除页眉页脚!!!

编程社区 2008 浙ICP备09013498号
© TinyBBS.cn
编程好站连接:codeproject sf.net codeplex