我在网页上创建了一个html按钮,可以截取屏幕截图并将其保存为图像。为此,我使用了以下代码。
<button class="btn btn-default btn-sm" style="margin:0px 0px -10px 970px; padding:2px 4px 1px 4px" onclick="genScreenshot()"><span class="glyphicon glyphicon-envelope"></span></button>
<a id="test"></a>
<div id="box1"></div>
<script type="text/javascript">
function genScreenshot() {
html2canvas(document.body, {
onrendered: function(canvas) {
$('#box1').html("");
if (navigator.userAgent.indexOf("MSIE ") > 0 ||
navigator.userAgent.match(/Trident.*rv\:11\./))
{
var blob = canvas.msToBlob();
window.navigator.msSaveBlob(blob,'Test file.png');
}
else {
$('#test').attr('href', canvas.toDataURL("image/png"));
$('#test').attr('download','screenshot.png');
$('#test')[0].click();
}
}
});
}
</script>
现在,我希望在下载后将此图片附加到outlook
新邮件中(即,只需点击一下,它就会下载屏幕截图并将其附加到邮件中)。
有办法吗?
如果是这样,请清楚地解释清楚。我不懂硬概念。所以,请用外行术语解释一下。
答案 0 :(得分:0)
获得该文件后,您可以使用 mailto 链接发送该文件。看看这里: https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Email_links
可能最好是嵌入在电子邮件中的base64编码img元素。