您的位置:首页 > 财经 > 金融 > 红河网络营销_吉安网站制作公司排名_好的推广平台_百度seo关键词排名价格

红河网络营销_吉安网站制作公司排名_好的推广平台_百度seo关键词排名价格

2024/12/23 20:02:02 来源:https://blog.csdn.net/qq_33982898/article/details/144592061  浏览:    关键词:红河网络营销_吉安网站制作公司排名_好的推广平台_百度seo关键词排名价格
红河网络营销_吉安网站制作公司排名_好的推广平台_百度seo关键词排名价格

地图截图

效果

在这里插入图片描述

实现

复制运行即可

要实现复杂的截图保存可以参考 官网案例

<!DOCTYPE html>
<html lang="zn"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><style>#mapview {width: 100vw;height: 100vh;}* {margin: 0;padding: 0;}#btn {position: fixed;right: 30px;top: 10px;z-index: 999;width: 100px;height: 40px;cursor: pointer;}</style><link rel="stylesheet" href="https://js.arcgis.com/4.23/esri/themes/light/main.css" /><script src="https://js.arcgis.com/4.23/"></script></head><body><button id="btn">地图截图</button><div id="mapview"></div><script>require(['esri/Map', 'esri/views/MapView', 'esri/layers/FeatureLayer'], function (Map,MapView,FeatureLayer) {// 初始化底图window.map = new Map({basemap: 'dark-gray-vector'})// 创建2维视图let view = new MapView({container: 'mapview',map: map,zoom: 11,center: [104.783916597735, 32.55699155692144] // 设置地图的初始化中心点坐标})document.querySelector('#btn').addEventListener('click', function () {view.takeScreenshot({area: {x: 0,y: 0,width: view.width,height: view.height},format: 'png'}).then(screenshot => {// 直接下载const base64 = screenshot.dataUrl.toString() // imgSrc 就是base64哈const byteCharacters = atob(base64.replace(/^data:image\/(png|jpeg|jpg);base64,/, ''))const byteNumbers = new Array(byteCharacters.length)for (let i = 0; i < byteCharacters.length; i++) {byteNumbers[i] = byteCharacters.charCodeAt(i)}const byteArray = new Uint8Array(byteNumbers)const blob = new Blob([byteArray], {type: undefined})const aLink = document.createElement('a')aLink.download = '图片名称.jpg' //这里写保存时的图片名称aLink.href = URL.createObjectURL(blob)aLink.setAttribute('crossOrigin', 'anonymous')aLink.click()})})})</script></body>
</html>

地图打印

使用arcgis自带的打印组件,可自选导出格式,方向等等

缺点是如果地图上有MapImageLayer等图层就会失效

效果

在这里插入图片描述

实现

<!DOCTYPE html>
<html lang="zn"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><style>#mapview {width: 100vw;height: 100vh;}* {margin: 0;padding: 0;}#btn {position: fixed;right: 30px;top: 10px;z-index: 999;width: 100px;height: 40px;cursor: pointer;}</style><link rel="stylesheet" href="https://js.arcgis.com/4.23/esri/themes/light/main.css" /><script src="https://js.arcgis.com/4.23/"></script></head><body><button id="btn">地图打印</button><div id="mapview"></div><script>require(['esri/Map','esri/views/MapView','esri/layers/FeatureLayer','esri/Graphic','esri/widgets/Print'], function (Map, MapView, FeatureLayer, Graphic, Print) {// 初始化底图window.map = new Map({basemap: 'dark-gray-vector'})// 创建2维视图let view = new MapView({container: 'mapview',map: map,zoom: 11,center: [104.783916597735, 32.55699155692144] // 设置地图的初始化中心点坐标})document.querySelector('#btn').addEventListener('click', function () {const print = new Print({view: view,label: '提取',// 最好指定为自己的打印服务printServiceUrl: 'https://utility.arcgisonline.com/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task'})// 将小部件添加到视图的右下角view.ui.add(print, 'bottom-right')})})</script></body>
</html>

注意

打印服务最好使用自己的arcgisServer服务, 如何开启自行百度,当然这种事直接呼叫公司gis工程师咯

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com