首页 / 浏览问题 / WebGIS / 问题详情
超图FAQ: 地图打印功能,打印官方天地图失败?
64,468EXP 2021年03月17日
超图FAQ: 地图打印功能,打印官方天地图失败?

1个回答

超图FAQ: 首先,天地图官网范围需要使用key。

其次,这个问题是跨域问题。
修改:
1. 使用第三方js



2. 天地图图层增加允许跨域的参数:userCORS: true
tiandituLayer = new SuperMap.Layer.WMTS({
name: "vec",
url: "http://t0.tianditu.com/vec_c/wmts?tk=1d109683f4d84198e37a38c442d68311",
layer: "vec",
style: "default",
matrixSet: "c",
format: "tiles",
opacity: 1,
requestEncoding: "KVP",
userCORS: true
});
tianMarkerLayer = new SuperMap.Layer.WMTS({
name: "vec",
url: "http://t0.tianditu.com/cva_c/wmts?tk=1d109683f4d84198e37a38c442d68311",
layer: "cva",
style: "default",
matrixSet: "c",
format: "tiles",
opacity: 1,
requestEncoding: "KVP",
userCORS: true
});
3. 示例中修改生成image的函数,如下:
function pasteCanvas(sCanvas/*source*/, dCanvas/*destination*/) {
var w = sCanvas.width,
h = sCanvas.height;
domtoimage.toPng(sCanvas)
.then(function (dataUrl) {
var img = new Image();
img.src = dataUrl;
var dContext = dCanvas.getContext("2d");
dContext.drawImage(img, 0, 0, w, h);

})
.catch(function (error) {
console.error("oops, something went wrong!", error);
});
}
64,468EXP 2021年03月17日
热门文章
关注我们
...