标题:
技术问题:打印试用的插件问题
[打印本页]
作者:
cesfis
时间:
2010-7-1 11:25
标题:
技术问题:打印试用的插件问题
我设置了受信站点 并且支持插件签名 但是预览无法正常使用 问一下 不需要采购printer 没有套打的需求 只是浏览器的打印使用 是否需要购买
详细见附件
作者:
admin
时间:
2010-7-1 13:46
你这个是杰表,杰表是收费的,带控件的,所以我们一般不建议使用浏览器来打印。
至于简表,你确实可以这样做。你只要将其中的 tools\下的有关js改成对webbrowser调用就可以了,具体代码参照楼下。
作者:
admin
时间:
2010-7-1 13:47
具体请参照 :
http://acdf111.javaeye.com/blog/441760
1)写一个javascrīpt函数,只要简单的一句话:
Java代码
function printPage()
{
document.all.WebBrowser.ExecWB(
7
,
1
);
}
function printPage() {document.all.WebBrowser.ExecWB(7,1); }
这个组件还有其他的用法,列举如下:
Java代码
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
) 关闭窗体无提示
WebBrowser.ExecWB(
7
,
6
) 直接打印
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) 关闭窗体无提示 WebBrowser.ExecWB(7,6) 直接打印
2)html页中,<a class="Noprint" ōnclick="printPage" href="#">打印</a> ;
点击既可出来当前页的打印预览
3)可以在样式表中控制打印输出的内容:
Java代码
<style media=print>
.OnlyPrintTitle{ display:inline;}
.Noprint{display:none;}
.PageNext{page-
break
-after: always;}
</style>
<style media=print>.OnlyPrintTitle{ display:inline;}.Noprint{display:none;} .PageNext{page-break-after: always;} </style>
说明:
a)media=print 表示这段样式对打印时起作用
b)OnlyPrintTitle:在非针对print的样式表中加入这个标签,并设置为display:none可实现只有打印时才显示的内容
c)display:none:表示打印时不显示,见2)中的html实例
d)page-break-after: always;遇到这个标记时,开始分页
Java代码
<object ID=‘WebBrowser‘ WIDTH=
"0"
HEIGHT=
"0"
CLASSID=‘CLSID:8856F961-340A-11D0-A96B-00C04FD705A2‘></object>
<scrīpt type=
"text/javascrīpt"
>
function print() {
document.getElementById(‘WebBrowser‘).ExecWB(
7
,
1
);
}
</scrīpt>
<OBJECT id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=
0
width=
0
></OBJECT>
<input type=button
class
=button value=打印 ōnclick=document.all.WebBrowser.ExecWB(
6
,
1
)>
<input type=button
class
=button value=页面设置 ōnclick=document.all.WebBrowser.ExecWB(
8
,
1
)>
<input type=button
class
=button value=打印预览 ōnclick=document.all.WebBrowser.ExecWB(
7
,
1
)>
作者:
cesfis
时间:
2010-7-1 14:03
很清楚呵呵 我发你消息了 一些商务上的问题 麻烦回复一下
作者:
cesfis
时间:
2010-7-1 14:14
对了 网站上几个联系的邮箱都发送不了邮件 呵呵 有什么具体的联系方式吗
作者:
admin
时间:
2010-7-1 14:24
jatools@gmail.com
作者:
wenhao
时间:
2010-10-20 22:51
这个帖子不错
作者:
wjyijun
时间:
2010-12-8 21:00
我已按照这个方式做了,但并不能打印出正常报表,预览时只有两页,第一页是工具条,第二面是正常报表的第一页,且还有个外框。
作者:
admin
时间:
2010-12-9 09:42
你大概调用了ie自带的打印按钮,或打印菜单。
如果安装了控件,必须点击左上角的打印按钮,才会正确打印。
作者:
wjyijun
时间:
2010-12-11 21:48
我的确执行的是document.all.WebBrowser.ExecWB(7,1)。
我安装的是IE8
作者:
wjyijun
时间:
2010-12-11 22:13
修改了tools下两个文件:
defaultviewer.jsp
toolsbar.jsp
作者:
admin
时间:
2010-12-13 10:14
要修改的地方,是对的,就这两文件,但你只嵌入了webbrowser控件,和打印命令,而没告诉浏览器哪些对象要打印,哪些不打印,哪里分页,所以,你除上以上修改,还需要修改defaultviewer.jsp,toolsbar.jsp。将打印按钮这排工具栏,将设置成
<style media=print>
.Noprint{display:none;}
// 凡是遇到Noprint类的对象,都不打印
.pcls{page-break-after: always;}
// jor输出的每一页,都会自动加上pcls,这里告诉浏览器,当打印完一个pcls的对象时,强制分页,这正是我们需要的
</style>
<div class='Noprint'><button>打印</button>...</div>
欢迎光临 杰表技术论坛 (http://bwtvl16d.jatools.com/)
Powered by Discuz! 6.1.0