highcharts 保存图片在ie8下遇到的问题与解决方案

前台用Extjs,后台用的django和python,由于在ie8下开发,ie8不支持svg所以highcharts的getSVG函数得到的坐标有些问题,所以需要将各个图表的options保存为的json格式文件(需要将options填充完整),然后提交到后台结合highcharts-convert.js和phantomjs命令保存为图片,最后用django的组件PIL将图片进行拼接。其中遇到饼状图用这种方式有问题,因为饼状图不存在xy轴坐标问题,所以继续沿用之前highcharts的getSVG函数得到svg数据,之前需要调整图例设置的宽高否则保存文件的图列会挤到一堆,保存图片后记得将图例设置恢复回去。

from subprocess import PIPE,Popen
p = Popen([phantomjsPath, convertjsPath, '-infile', jsonFilePath, '-outfile', svgFilePath, '-scale', '1'], stdout = PIPE, stderr = PIPE)
p = Popen([phantomjsPath, convertjsPath, '-infile', svgFilePath, '-outfile', outFilePath, '-scale', '1'], stdout = PIPE, stderr = PIPE)out, err = p.communicate()





你可能感兴趣的:(技术类,ie8,highcharts,图片,svg)