全图不来,部分来了

full image is not coming, partial come

我使用此代码获取图像格式的图表,但图表未满,只有一部分。 你能帮帮我吗,谢谢

function genrateImage(){
 alert("genrateImage");
 var svgs = document.getElementsByTagName("svg");
 var totalHeight = svgs[0].getBoundingClientRect().height;
 var totalWidth = svgs[0].getBoundingClientRect().width;
 var c = document.createElement("canvas");
 c.setAttribute("height",totalHeight);
 c.setAttribute("width",totalWidth);
 ctx = c.getContext("2d");
 var marginX = 10, marginY = 10;
 var image64 ;
 for(i=0;i<svgs.length;i++){
   var xml = new XMLSerializer().serializeToString(svgs[i]);
   var svg64 = btoa(xml);
   var b64Start = 'data:image/svg+xml;base64,';
   image64 = b64Start + svg64;
   var svgSize = svgs[i].getBoundingClientRect();          
   var img= document.createElement("img");
   img.setAttribute("src", image64);
   ctx.drawImage(img, marginX, marginY);
   ctx.save(); 
   marginX += svgSize.width + 20;        
 };   
 var imgsrc = c.toDataURL("image/png");
 var a = document.createElement("a");
 a.download = "Sample.png";        
 a.href = imgsrc;        
 a.click();
 a.remove();

}

我使用 dom2image.js 它会给出正确的结果