window.open didn't work for me... just a blank page rendered... but I was able to make the png appear on the page by replacing the src attribute of a pre-existing img element created as the target.
$("#btn_screenshot").click(function(){_x000D_
element_to_png("container", "testhtmltocanvasimg");_x000D_
});_x000D_
_x000D_
_x000D_
function element_to_png(srcElementID, targetIMGid){_x000D_
console.log("element_to_png called for element id " + srcElementID);_x000D_
html2canvas($("#"+srcElementID)[0]).then( function (canvas) {_x000D_
var myImage = canvas.toDataURL("image/png");_x000D_
$("#"+targetIMGid).attr("src", myImage);_x000D_
console.log("html2canvas completed. png rendered to " + targetIMGid);_x000D_
});_x000D_
}
_x000D_
<div id="testhtmltocanvasdiv" class="mt-3">_x000D_
<img src="" id="testhtmltocanvasimg">_x000D_
</div>
_x000D_
I can then right-click on the rendered png and "save as". May be just as easy to use the "snipping tool" to capture the element, but html2canvas is an certainly an interesting bit of code!