记录一下以前纠结的一个问题:怎样将jQWidgets 画出的图片导出到Excel中。
官方列子写的比较泛泛,也没搞明白是什么意思(如下代码)。http://www.jqwidgets.com/jquery-widgets-demo/demos/jqxchart/index.htm#demos/jqxchart/javascript_chart_export_jpeg.htm
function getExportServer() { return 'http://www.jqwidgets.com/export_server/export.php'; }
$('#chartContainer').jqxChart('saveAsPNG', 'myChart.png', getExportServer());
上面的代码只能完成将图片下载到本地,却不能满足我的实际要求,下载并且写入excel.当初考虑了一种办法:调用 saveAsPNG 将图片保存到本地,然后用java 程序读取下载的图片文件,再将其写入excel 中,显然这种方式是不可行的,因为下载是浏览器行为,并不是server行为,所以没有固定的目录进行操作。经过半个小时的研究发现这样一句话:If you don't setup your own export server the default server is jqwidgets.com.从这句话中我们可以看出我们是可以自己设置自己的导出服务器的,所以我尝试着将例子中的 http://www.jqwidgets.com/export_server/export.php 换成自己的action(用struts2处理浏览器请求),结果成功了。这时你就可以将浏览器返回的图片流写入excel或其他需要的地方了。经过这次这个事,我体会到官方文档的重要性,不要只看例子,照搬例子,文档才是精华。