我需要構建一個Web應用程序,該應用程序呈現具有不同標記的地圖。 我認爲要使用OpenLayers的解決方案,但我希望地圖具有「更好」的外觀(例如,http://leaflet.cloudmade.com/)。你知道任何可以與OpenLayers一起使用的庫來改善它的外觀嗎?如何美化OpenLayers地圖
4
A
回答
0
4
可以樣式地圖按鈕,只要你想使用CSS和圖像。在藍色默認按鈕的一個熱門話題是https://github.com/developmentseed/openlayers_themes(更多信息http://support.mapbox.com/kb/mapping-101/openlayers-themes)
爲特徵的造型,看看http://docs.openlayers.org/library/feature_styling.html
2
定製的OpenLayers會給你頭都疼,只是並不意味着要好看。只需使用傳單,你會沒事的。 :)
1
如果你使用谷歌地圖,你可以輕鬆做到這一點!
您必須做的是將openlayers.js腳本的源文件複製到您的公共可用目錄,例如public/js/openlayers.js
。腳本被縮小。你需要打開它並找到它說的地方google.maps.Map
並通過在必要時添加中斷來清除此聲明(這使得它更易於閱讀)。然後,您需要將樣式屬性添加到第二個參數。一些樣式選項可以免費在這個網站上找到:
https://snazzymaps.com/explore
你到底應該有這樣的一節中您的自定義openlayers.js文件:
google.maps.Map(b,{
center:a?new google.maps.LatLng(a.lat,a.lon):new google.maps.LatLng(0,0),
zoom:this.map.getZoom()||0,
mapTypeId:this.type,
disableDefaultUI:!0,
keyboardShortcuts:!1,
draggable:!1,
disableDoubleClickZoom:!0,
scrollwheel:!1,
streetViewControl:!1,
styles: [{"featureType":"road","stylers":[{"hue":"#5e00ff"},{"saturation":-79}]},{"featureType":"poi","stylers":[{"saturation":-78},{"hue":"#6600ff"},{"lightness":-47},{"visibility":"off"}]},{"featureType":"road.local","stylers":[{"lightness":22}]},{"featureType":"landscape","stylers":[{"hue":"#6600ff"},{"saturation":-11}]},{},{},{"featureType":"water","stylers":[{"saturation":-65},{"hue":"#1900ff"},{"lightness":8}]},{"featureType":"road.local","stylers":[{"weight":1.3},{"lightness":30}]},{"featureType":"transit","stylers":[{"visibility":"simplified"},{"hue":"#5e00ff"},{"saturation":-16}]},{"featureType":"transit.line","stylers":[{"saturation":-72}]},{}]
}),
這裏的缺點是如果Google API和/或openlayers.js腳本改變了你的腳本的靜態副本,那麼你可能會冒險破壞你的地圖。我覺得這是一件很罕見的事情,並且爲了更漂亮的地圖付出的代價是很小的。
相關問題
- 1. 如何使用Openlayers地圖
- 2. 如何設置OpenLayers地圖的範圍?
- 3. 谷歌地圖和的OpenLayers
- 4. Openlayers谷歌地圖getTileBounds
- 5. Openlayers中Bing地圖的WrapDateLine
- 6. 觸發Openlayers全屏地圖
- 7. Google地圖的DirectionsRenderer與OpenLayers
- 8. OpenLayers地圖行不對齊
- 9. 如何完美地獲取圖像
- 10. 如何在openlayers中添加地圖圖層疊加層?
- 11. 如何將GRADS圖像疊加到OpenLayers地圖中
- 12. OpenLayers:更改矢量圖層後如何刷新地圖
- 13. 標準地圖上的Openlayers圖像
- 14. 在Node.js視圖中創建OpenLayers地圖
- 15. OpenLayers,Bing,連續地圖圖層
- 16. 如何美化網址?
- 17. 如何格式化美元?
- 18. 如何美化.vue文件?
- 19. 從外部JavaScript文件初始化openlayers地圖
- 20. 的OpenLayers放大到美國與界
- 21. 美聯儲shapefile地圖
- 22. 美國gmaps地圖集成
- 23. 如何讓OpenLayers地圖縮小比它所在的div更遠?
- 24. 如何在OpenLayers中設置初始地圖區域?
- 25. 如何使用JSON座標將標記添加到OPENLAYERS地圖?
- 26. 如何限制OpenLayers地圖中的區域?
- 27. OpenLayers:如何在側邊欄摺疊後重繪地圖?
- 28. 如何以編程方式縮放地圖Openlayers 3?
- 29. 谷歌地圖上的美國地鐵地區地理地圖
- 30. jQuery Mobile不會加載OpenLayers地圖
呃,爲什麼你不能使用傳單? – CharlesB
什麼是更好的外觀,地圖瓷磚或控件? – tonio