html2canvas截取专题图(包含地图)

问题:html2canvas截取地图时地图空白,报错: Unable to clone WebGL context as it has preserveDrawingBuffer=false

一、情况介绍:

​ 使用如下代码进行截图时,出现地图空白情况,报错: Unable to clone WebGL context as it has preserveDrawingBuffer=false ,地图使用的框架为mapbox

const exportSave = async () => {
const element = document.getElementById('mapCanvasId');
const options = { scale: 2, backgroundColor: null, }
html2canvas(element, options).then((canvas) => {
const png = canvas.toDataURL("image/png"); // 拿到截图后转换为png图片
// 下载
down(png, '我的制图')
});
}
const down = function (url, name) {
// 创建a标签
const vectorDom = document.createElement('a')
vectorDom.href = url
vectorDom.download = name ? name : url.split(/[//]/).pop()
// console.log(name)
// 不显示a标签
vectorDom.setAttribute('display', 'none')
document.body.appendChild(vectorDom)
vectorDom.click()
setTimeout(() => {
document.body.removeChild(vectorDom)
}, 500)
}

二、解决办法:

​ 在地图初始化时添加添加如下代码:

preserveDrawingBuffer: true

结果效果如下:

html2canvas截取专题图(包含地图)的更多相关文章

  1. Mapgis地图颜色配置(专题图配置)----对比Arcgis根据属性配置图斑颜色

    对于大多数arcgis用户来说,根据属性配置图斑颜色对于大家来说应该并不陌生.本文将就arcgis图斑颜色设置与mapgis做出比对,为大家提供更为绚丽的地图配色.    Arcgis颜色配置方案 右 ...

  2. arcpy.mapping实战-专题图制图自动化

    arcpy.mapping实战-专题图制图自动化 by 李远祥 最初对arcpy.mapping感兴趣是因为一次大规模的专题地图调整的需要,由于某某单位利用ArcEngine编写的专题图出图系统,出现 ...

  3. [转] AE之分级颜色专题图渲染

    原文 AE之分级颜色专题图渲染 参考代码1 private void 分级渲染ToolStripMenuItem_Click(object sender, EventArgs e) { //值分级 I ...

  4. supermap iclient for js 标签专题图(服务端)

    <!DOCTYPE><html> <head> <meta http-equiv="Content-Type" content=" ...

  5. PDF截取矢量图

    PDF截取矢量图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 方法与步骤 下载并安装 Adobe Acrobat X Pro 软件 点击右侧按钮(工具)-页面-裁剪-单击并选择区域-双击实 ...

  6. Supermap 组合单值专题图与标签专题图演示样例

    效果图例如以下:单值专题图并显示每一个区域的相关文字信息 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc29uZ2hmdQ==/font/5a6L5L2T ...

  7. html2canvas截取屏幕的方法

    html2canvas截取屏幕的方法 需要放在服务上运行,否则会报错, 放在服务器里,完美运行  处理截屏模糊的方法 html2canvas 0.5.0-beta3解决截图模糊问题 需要引入html2 ...

  8. PIE SDK专题制图下地图的的操作

    1.    功能简介 制图模式和地图模式下用的地图是同一份地图,那么在制图模式下如果需要对地图进行操作(例如地图的拉框放大,缩小),那么该如何操作呢,地图范围视图变化在制图模式下该如何监听呢,下面主要 ...

  9. D3.js系列——布局:打包图和地图

    一.打包图 打包图( Pack ),用于表示包含与被包含的关系,也可表示各对象的权重,通常用一圆套一圆来表示前者,用圆的大小来表示后者. 1.布局(数据转换) var pack = d3.layout ...

  10. 一个操作轻松截取长图,Win10上网截长图小技巧!

    截屏的方法有很多,但是有时候我们会遇到比电脑屏幕还大的图,比如网站上的长图.N条引用的评论...你要怎么截取呢?是不是最多只能截全屏?还是要做到第三方的截图软件呢? 下面介绍一种win10电脑自带的滚 ...

随机推荐

  1. 滴滴面试:谈谈你对Netty线程模型的理解?

    Netty 线程模型是指 Netty 框架为了提供高性能.高并发的网络通信,而设计的管理和利用线程的策略和机制. Netty 线程模型被称为 Reactor(响应式)模型/模式,它是基于 NIO 多路 ...

  2. vue 实现商品列表的添加、删除,搜索

    大江东去,浪淘尽,千古风流人物.故垒西边,人道是,三国周郎赤壁.乱石穿空,惊涛拍岸,卷起千堆雪.江山如画,一时多少豪杰.遥想公瑾当年,小乔初嫁了,雄姿英发.羽扇纶巾,谈笑间,樯橹灰飞烟灭.故国神游,多 ...

  3. kubernetes——资源管理

    Kubernetes 资源管理 介绍 kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理kubernetes. kubernetes的最小管理单元是pod而不是容器,所以只能将 ...

  4. 常见距离计算的Python实现

    常见的距离有曼哈顿距离.欧式距离.切比雪夫距离.闵可夫斯基距离.汉明距离.余弦距离等,用Python实现计算的方式有多种,可以直接构造公式计算,也可以利用内置线性代数函数计算,还可以利用scipy库计 ...

  5. 代码审计——基础(JAVAEE)

    JAVAEE 目录 JAVAEE 常见框架 Struct2(控制层) Hibernate(持久层(与数据库交互)(不用再写简单的sql语句,但是需要一些列复杂的配置文件))(全ORM模型) Sprin ...

  6. INFINI Easysearch 与兆芯完成产品兼容互认证

    近日,极限科技旗下软件产品 INFINI Easysearch 搜索引擎软件 V1.0 与兆芯完成兼容性测试,功能与稳定性良好,并获得兆芯产品兼容互认证书. 此次兼容适配基于银河麒麟高级服务器操作系统 ...

  7. 华为云短信服务教你用C++实现Smgp协议

    本文分享自华为云社区<华为云短信服务教你用C++实现Smgp协议>,作者:张俭. 引言&协议概述 中国联合网络通信有限公司短消息网关系统接口协议(SGIP)是中国网通为实现短信业务 ...

  8. Jmeter自动录制脚本

    1.Jmeter配置 1.1新增一个线程组 1.2Jmeter中添加HTTP代理 1.3配置HTTP代理服务器 修改端口 修改Target Cintroller(目标控制器) 修改Grouping(分 ...

  9. 洛谷 P1226 快速幂

    题目链接:快速幂 思路 简单快速幂模板.a ^ 17 = (a ^ 2) ^ 8 * a,此时pow()中的y就可以视为17 -> 8(y >>= 1),pow()中的x就是底数a ...

  10. Windows下用VS2022编译安装Boost库

    Windows下用VS2022编译安装Boost库 下载地址: https://www.boost.org/users/download/ 解压得到如下文件: 编译安装: 打开vs2022命令行工具 ...