问题描述:利用html2canvas插件把div内容生成png图片并且下载,运气好的时候会有几秒钟延迟,有时候会出现10s延迟。
解决方法:利用dom-to-image插件来替换html2canvas插件。
dom-to-image 是一个将 DOM 元素转换成图片的 JavaScript 库。它可以将网页中的某个元素转换为图片,并支持将多个元素转换为同一图片中的叠加效果。
具体实现步骤如下:
1、引入js库
<script src="/js/dom-to-image.min.js"></script>
2、执行photo按钮代码:
function photo(){
var node = document.querySelector("#map");
domtoimage.toPng(node).then(function (dataUrl) {
downloadFile('下载图片名称.png',dataUrl);
});
};
function downloadFile(fileName, content) {
let aLink = document.createElement('a');
let blob = base64ToBlob(content); //new Blob([content]);
let evt = document.createEvent("HTMLEvents");
evt.initEvent("click", true, true);
aLink.download = fileName;
aLink.href = URL.createObjectURL(blob);
aLink.dispatchEvent(new MouseEvent('click', {bubbles: true, cancelable: true, view: window}));
}
function base64ToBlob(code) {
let parts = code.split(';base64,');
let contentType = parts[0].split(':')[1];
let raw = window.atob(parts[1]);
let rawLength = raw.length;
let uInt8Array = new Uint8Array(rawLength);
for (let i = 0; i < rawLength; ++i) {
uInt8Array[i] = raw.charCodeAt(i);
}
return new Blob([uInt8Array], {type: contentType});
}
PouchDB:一款基于JavaScript 的开源NoSQL文档数据库
Swiper中文网:一个专注于提供Swiper滑动特效插件的平台
tracking.js:一个轻量级的JavaScript库,实现各种计算机视觉算法和技术
一款专门用于在JavaScript和TypeScript的货币处理工具库——Dinero.js
一款开源JavaScript库,实现图片背景色智能提取与融合——AutoHue.js
上面是“html2canvas生成图片后下载太慢解决方法(dom-to-image)”的全面内容,想了解更多关于 js 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_5104.html
workflows工作流
一幅3D农场游戏画面ComfyUI工作流
一个女人站在海边的岩石上,飞来一只鸟
半透明的玻璃苹果ComfyUI工作流
一只可爱的雪豹在雪地里散步ComfyUI工作流
一只开屏的白色孔雀ComfyUI工作流
树枝上一只色彩斑斓的小鸟
森林里一只邪恶的树妖ComfyUI工作流
一位宇航员做在一只乌龟上在星空中游走
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

会议人员60s签到倒计时插件
黑客入侵效果代码
jquery鼠标滑过图片边框特效(jquery.focus-follow插件)
如何利用css3+js做一个下雨效果
3d文字360度旋转
利用js做一个炫酷音乐背景效果
一个包含老黄历、佛历、道历、星宿等数据的日历网站
js导出excel插件(兼容mac电脑Numbers表格)







