fusioncharts在报表应用中的确很好很强大,但正式版的收费也很“强大”,所以穷屌丝的公司还是选择了让我去找一个**版的。这样不会在左上角出现烦人的FusionCharts图标,但找的一些**版又在打印的时候有问题。
首先直接用的window.print();这样在IE8及以下版本可以打印,但放到FF或Chrome/safari就不行了,是一空白的。
找了一些资料发现得用自带的printManager。
在实例化FusionCharts的时候得加上一句
FusionCharts.printManager.enabled(true);
var holder = new FusionCharts('<%=request.getContextPath() %>/Charts/Line.swf','chart_detail','910','500');
holder.setXMLData('${chart_detail }');
holder.render('chart_d');
这样开启打印管理,再使用
FusionCharts.printManager.managedPrint();
打印。
在实际的项目中,又遇到了一个页面有6个小图
因为printManager只能打印整个页面,所以排版成了问题,最后解决方案就是,在每个小图上加一个放大按钮。点击后打开一个iframe放大,再在iframe里面打印。
这样才解决了fusionCharts**版的打印问题。很多**版可能是不完全,所以贴出我找的分享下也做一个保存。http://download.csdn.net/detail/aj1031689/6480689 (文件下载)