我正在使用
HTML2canvas .4.1渲染一个截图,并将图像保存到用户的本地计算机.这怎么可以实现?请注意,我是初学者,所以实际的代码对我来说最有帮助.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <script type="text/javascript" src="html2canvas.js"></script> <button id="save_image_locally">download img</button> <div id="imagesave"> <img id='local_image' src='img1.jpg'> </div> <script> $('#save_image_locally').click(function(){ html2canvas($('#imagesave'),{ onrendered: function (canvas) { var img = canvas.toDataURL("image/png"); alert('This will currently open image in a new window called "data:". Instead I want to save to users local computer. Ideally as a jpg instead of png.'); window.open(img); } }); }); </script>
解决方法
尝试这样(请注意,Safari会在同一个标签页中打开图片,而不是下载它; Safari中不支持下载属性)
<script> $('#save_image_locally').click(function(){ html2canvas($('#imagesave'),{ onrendered: function (canvas) { var a = document.createElement('a'); // toDataURL defaults to png,so we need to request a jpeg,then convert for file download. a.href = canvas.toDataURL("image/jpeg").replace("image/jpeg","image/octet-stream"); a.download = 'somefilename.jpg'; a.click(); } }); }); </script>
原文地址:https://www.jb51.cc/html/224702.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。