google map api 使用自訂底圖
在 Google map js api 中,不使用其預設底圖,改採用國土測繪中心的通用電子地圖
參考 Google 官方的 Map Types 說明文件,提到可以使用 setMapTypeId 此方法來指定底圖,記得更換以下的 google api key ,可以參考此篇
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| <!DOCTYPE html> <html>
<head> <title>Overlay map types</title> <style> html, body { height: 100%; margin: 0; padding: 0; }
#map { height: 100%; } </style> </head>
<body> <div id="map"></div> <script> function initMap() { const wmsMapType = new google.maps.ImageMapType({ maxZoom: 18, minZoom: 7, name: "test", tileSize: new google.maps.Size(256, 256), isPng: true, getTileUrl: function (coord, zoom) { return `http://wmts.nlsc.gov.tw/wmts/EMAP/default/GoogleMapsCompatible/${zoom}/${coord.y}/${coord.x}`; } }); const map = new google.maps.Map(document.getElementById('map'), { zoom: 12, center: new google.maps.LatLng(25.04, 121.505) }); map.mapTypes.set('test', wmsMapType); map.setMapTypeId('test'); } </script> <script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCmg6WKhPyvaIM7yJI-x3LtXkgvWJzjiZE&callback=initMap"></script> </body>
</html>
|
參考資料