1.打印方式选择 jatoolsPrinter (这种方式打印是比较好的,可是有一个缺点就是不能打印div里的地图,在打印地图的时候,经常只打印一小块。打印地图的时候,就选第二种方式吧)
在 jsp 页面引入
<OBJECT ID="jatoolsPrinter" CLASSID="CLSID:B43D3361-D075-4BE2-87FE-057188254255"
codebase="jatoolsPrinter.cab#version=8,6,1,0"></OBJECT> 之后 就可以调用了
调用方法
各参数说明
printer: 设置默认打印机
orientation: orientation值等于1是纵向打印 orientation值等于2是横向打印
copyrights: '杰创软件拥有版权 www.jatools.com' 这个值好像是必须带的。
更多调用可以参考网站api http://printfree.jatools.com/ 这个是免费版的官网,一般的需求我觉得这个就够了。
要打印的区域规定id必须是从page1开始
如:
<div class="inner" id="page1">
<center><h1 class="top" id="readdress">方位图</h1><center>
</div>
打印方法:
function doPrint(how) {
var myDoc = {
settings:{printer:'HP LaserJet 1020',orientation:2},//设置默认打印机
documents: document,
copyrights: '杰创软件拥有版权 www.jatools.com'
};
if(how == '打印预览...')
document.getElementById("jatoolsPrinter").printPreview(myDoc ); // 打印预览
else if(how == '打印...')
document.getElementById("jatoolsPrinter").print(myDoc ,true); // 打印前弹出打印设置对话框
else
document.getElementById("jatoolsPrinter").print(myDoc ,false); // 不弹出对话框打印
}
1.打印方式选择 WebBrowser 控件
引入 WebBrowser 控件方式 咋jsp 页面加入
<OBJECT id="wb" height="0" width="0" style="display:none" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" name="wb"></OBJECT>
打印前先设置打印页面页眉和页脚 使用修改注册表的方式
方法为
function setPageSetup(){
try{
var shell = new ActiveXObject("WScript.Shell");
//往注册表中写入值
shell.RegWrite("HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\PageSetup\\footer","","REG_SZ");//去除页脚
shell.RegWrite("HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\PageSetup\\header","","REG_SZ");//去除页眉
}catch(e){
alert("error:"+e);
}
}
打印方法 我这的需求是直接打印(不弹出设置打印机选项),并且要求是横向打印(这里我是直接通过修改 控制面板 -打印机-默认打印机-设置首选项-横向打印来做的)
直接打印不弹出设置框的方法
function myprint(){
setPageSetup();
wb.execwb(6,2); //直接打印,前提是有真正的打印机,虚拟的话好像不行,还是会弹出设置框的
}
关于WebBrowser 的其他方法
wb.execwb(8,1); // 打印页面设置
wb.execwb(7,1);// 打印页面预览
下面这些方法还未尝试,暂时整理一下。
WebBrowser.ExecWB(1,1) 打开 WebBrowser.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口 WebBrowser.ExecWB(4,1) 保存网页 WebBrowser.ExecWB(6,1) 打印 WebBrowser.ExecWB(7,1) 打印预览 WebBrowser.ExecWB(8,1) 打印页面设置 WebBrowser.ExecWB(10,1) 查看页面属性 WebBrowser.ExecWB(15,1) 好像是撤销,有待确认 WebBrowser.ExecWB(17,1) 全选 WebBrowser.ExecWB(22,1) 刷新 WebBrowser.ExecWB(45,1) 关闭窗体无提示