2016-05-26 52 views
0

我正在尝试使用我的canvasJS图合并图像(图形的背景图像)。如何使用CanvasJS图合并图像并下载它们的图像

这些被合并到一个画布后,我想获得这个画布的DataURL,这将允许我下载它的图像(图形的图像及其各自的背景图像)。

我一直在玩弄JS小提琴试图让这个工作一段时间,但我似乎无法弄清楚。

这是我目前的小提琴:

http://jsfiddle.net/dyt943s0/19/

我已经通过合并另外两个小提琴代码一起创建的小提琴:

1)https://jsfiddle.net/cuajw85L/1/(合并两个画布和创建它们的图像)。 和 2)http://jsfiddle.net/canvasjs/muqb7d3n/(创建CanvasJS图表的图像)

这里是关于小提琴的代码我一直在努力:

JS:

var chart = new CanvasJS.Chart("chartContainer", 
{ 
     title: { 
      text: "Exporting chart using toDataurl" 
     }, 
     data: [ 
     { 
      type: "spline", 
      dataPoints: [ 
       { x: 10, y: 4 }, 
       { x: 20, y: 7 }, 
       { x: 30, y: 2 }, 
       { x: 40, y: 3 }, 
       { x: 50, y: 5 } 
      ] 
     } 
     ] 
}); 

chart.render(); 

var img=new Image(); 
img.crossOrigin='anonymous'; 
img.onload=start; 
img.src="https://dl.dropboxusercontent.com/u/139992952/multple/fish.jpg"; 
function start(){ 

    var bottleCanvas = document.getElementById('bottleCanvas'); 
    var designCanvas = $(".canvasjs-chart-canvas"); 
    var ctxb=bottleCanvas.getContext('2d'); 
    var ctxd=editorCanvas.getContext('2d'); 

    ctxb.drawImage(img,0,0); 
    ctxd.fillRect(50,50,50,50); 

    downloadCanvas(); 
} 

function downloadCanvas() { 
    var bottleCanvas = document.getElementById('bottleCanvas'); 
    var designCanvas = $(".canvasjs-chart-canvas"); 

    var bottleContext = bottleCanvas.getContext('2d'); 
    bottleContext.drawImage(designCanvas, 69, 50); 

    var dataURL = bottleCanvas.toDataURL("image/png"); 
    var link = document.getElementById('btn-download'); 
    link.download = "bottle-design.png"; 
    link.href = bottleCanvas.toDataURL("image/png").replace("image/png", "image/octet-stream"); 


} 

HTML:

<br/><!-- Just so that JSFiddle's Result label doesn't overlap the Chart --> 
<canvas id="bottleCanvas" width=300 height=300></canvas> 
<canvas id="editorCanvas" width=300 height=300></canvas> 

<div id="chartContainer" style="height: 360px; width: 100%;"></div> 
<a href="#" id="btn-download" download="chart.png" target="_blank">Download</a> 

回答