Is there a way to take a highcharts graph, and get a base64 representation of the it?
In other words, the equivalent of first exporting it to PNG or JPG (I don't care which) and then getting a base64 string of that image.
Is there a way to take a highcharts graph, and get a base64 representation of the it?
In other words, the equivalent of first exporting it to PNG or JPG (I don't care which) and then getting a base64 string of that image.
here is how i solve it :
use google canvg It takes a URL to a SVG file or the text of an SVG file, parses it in JavaScript, and renders the result on a Canvas element.
render your chart svg to the canvas using
convert what you have in the canvas to image
render your image to a hidden field
to convert this string to byte array do
UPDATE
get the highcharts SVG
chart.getSVG()
methodHighcharts API
jsFiddle Example
$(your svg).html()
First, see the
highcharts
documentation on exporting files. This will give you the string to the image URL you want.Exporting: http://www.highcharts.com/ref/#exporting
Use an HTTP request (with AJAX, for instance) to get the file binary content (jpg/png) and transfer it to a base64 encoding library like this one:
Base64: http://www.webtoolkit.info/javascript-base64.html
Enjoy and good luck!