我试图使用html2canvas截图:
var body = document.getElementById("body") $(body).html2canvas({onrendered: function( canvas ) { var urlData = canvas.toDataURL("image/jpeg"); }});
我的身体的背景是透明的,因此,由于jpeg的urlData具有黑色背景(不像浏览器那样是白色的).
在这种情况下,如何解决这个问题,使背景颜色变白?
解决方法
我修改了临时:_html2canvas.Util.isTransparent from
_html2canvas.Util.isTransparent = function(backgroundColor) { return (backgroundColor === "transparent" || backgroundColor === "rgba(0,0)"); };
至
_html2canvas.Util.isTransparent = function(backgroundColor){
return(backgroundColor ===“transparent”|| backgroundColor ===“rgba(0,0)”|| backgroundColor === undefined);
};
html2canvas(screenshot_element,{ background :'#FFFFFF',onrendered: function (canvas) { ..... } });
对我来说,考虑透明一个未定义的背景是有道理的.