2016-07-26 68 views
0

我目前正在构建一个系统,该系统需要绘制图形点,然后将该图形导出为电子邮件中的图像。这个过程是用Java编写的现有过程的补充。创建图形并将其导出为图像的库

如果有一个最好的Java解决方案,但我已经看到了一些图形库,例如JavaScript中的d3.js,我可以使用它。从我可以告诉d3.js没有功能将图形导出为PNG或JPEG。

+0

它可以D3图形导出为图片。看到[这个问题](http://stackoverflow.com/questions/16049538/how-to-convert-save-d3-js-graph-to-pdf-jpeg)。 – nicholas79171

+0

我知道JFreeChart –

回答

1

在你可以使用呈现给<画布图表库如> chart.js之

http://www.chartjs.org

然后,一旦你已经呈现图表的画布上,你可以得到的图像数据作为浏览器PNG或JPG:

var canvas = document.getElementById('myCanvas'); 
var dataURL = canvas.toDataURL("image/png"); 

这会给你,你可以用HTML图像使用图像的base64编码的URI:

var imgElement = document.getElementById('myImg'); 
imgElement.src = dataURL; 

https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs

您也可以直接从画布获得的图像数据:

var imgData = canvas.getContext('2d').getImageData(0, 0, canvas.width, canvas.height); 

https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/getImageData

相关问题