报表打印调用
想请教一下,目前我们通过报表设计,然后进行打印。整个路径比较长,请问下有什么方式我们可以通过按钮直接打印出报表内容吗?现在我们点图一的打印,会出来图二,点图二里的打印出来的是图三,点图三里的打印才能完成真正的打印。
想请教下,是否可以点图一里的打印就直接连上打印机打印出图二里的内容。
本帖最后由 Felix.Li 于 2024-9-25 09:28 编辑
您好,给您说一下整个原因。
1.您如果要实现完全的 无预览打印,并且还是客户端的,这个浏览器是做不到的,因为浏览器是没有办法直接调用系统打印机的,并且浏览器的打印必须弹出来那个弹出框,这个是浏览器的限制,我们没有办法绕开。
2.按照您说的,用lodop,不确定能不能准确的抓到页面对应的元素,并且纸张自动调整,这个我们也不确定。但是我们之前发您的方案,那个教程里面会借助一个程序,这个原理其实是先调用我们的接口,做一个导出,导出一个PDF,然后后端那个其实也是我们网上找的一个开源的,调用系统打印机的程序,然后相当于是基于一个服务端程序,把那个PDF打印出来,所以其实您不用我们的也可以,自己写一个也行,因为我们最后那个导出接口得到的blob,就是一个PDF流,咱们自己处理也行。
3.关于您用教程里面,打印出来这个样子应该是教程里面那个程序是调用的系统默认打印机,所以打印属性走的是打印机的首选项,应该是打印机的首选项里面纸张和方向指定成这个样子了,所以打印出来的是这个样子的,需要您主动调整默认打印机的首选项
然后整体如果您要打印,分两个,一个是点击打印,弹出浏览器打印框,这个您按照之前发您的教程。引用我们的JS,直接调用
GrapeCity.ActiveReports.JSViewer.print({ reportID:'RdlReport1.rdlx'});用这个即可。
如果不希望出现弹出框,如果用我们前面的教程,您就调整默认打印机属性。或者咱们自己写一个服务端打印程序,给客户端安装一下,浏览器用PDF流去打印也可以
问题描述:如何实现无预览打印?
问题解答:您好,无预览打印您可以参考下面的教程进行实现:
AR-web端实现静默打印(无预览打印)
https://gcdn.grapecity.com.cn/showtopic-163480-1-1.html
(出处: 葡萄城开发者社区)
Bella.Yuan 发表于 2024-9-24 10:24
问题描述:如何实现无预览打印?
问题解答:您好,无预览打印您可以参考下面的教程进行实现:
AR-web端实 ...
好的,我们先研究下
livi 发表于 2024-9-24 10:29
好的,我们先研究下
ok,您先看看 ,有问题及时追贴哦~ 这个是还要生成一个文件保存到本地吗? 如何直接调用打印机直接打印呢
如果是不去预览报表,直接打印的话,只能通过上面教程中的方式。需要给打印机一个打印的文档。
如果不想创建文档的话。只能先预览在打印,可以参考帮助文档中的示例:
https://demo.grapecity.com.cn/activereportsjs/demos/api/print/purejs Eden.Sun 发表于 2024-9-24 11:56
如果是不去预览报表,直接打印的话,只能通过上面教程中的方式。需要给打印机一个打印的文档。
如果不想创 ...
如何可以直接调用浏览器的打印呢?有没有方法获取到报表里面的页面内容
就是有没有不用装你们那个pdfprint插件的..
不装插件是可以直接到这个页面对吧,我搜索了技术社区里的其它帖子