Kiedy ładuję obraz do właściwości icon znacznika, wyświetla się on w swoim oryginalnym rozmiarze, który jest znacznie większy niż powinien.
Chcę zmienić rozmiar do standardowego na mniejszy rozmiar. Jaki jest najlepszy sposób, aby to zrobić?
Kod:
function addMyPos(latitude,longitude){
position = new google.maps.LatLng(latitude,longitude)
marker = new google.maps.Marker({
position: position,
map: map,
icon: "../res/sit_marron.png"
});
}
javascript
google-maps
google-maps-markers
image-resizing
Golan_trevize
źródło
źródło
scaledSize
zamiastscale
= loveJak wspomniano w komentarzach, jest to zaktualizowane rozwiązanie na korzyść obiektu Icon z dokumentacją.
Użyj obiektu Icon
źródło
icon object
iscaledSize: new google.maps.Size(h, w)
własność tego obiektunew google.maps.Size(w, h)
h, wMarkerImage został wycofany dla Icon
Kod Phillippe'a wyglądałby teraz:
źródło
scaledSize
raczej niżsize
.Usuń początek i kotwicę będzie bardziej regularnym obrazem
źródło
Zupełnie początkującym, takim jak ja, może być trudniej wdrożyć jedną z tych odpowiedzi niż, jeśli masz kontrolę, samemu zmienić rozmiar obrazu za pomocą edytora online lub edytora zdjęć, takiego jak Photoshop.
Obraz 500x500 będzie większy na mapie niż obraz 50x50.
Nie wymaga programowania.
źródło
Więc miałem ten sam problem, ale trochę inny. Miałem już ikonę jako obiekt, jak sugeruje Philippe Boissonneault , ale używałem obrazu SVG.
Rozwiązanie dla mnie to:
Przełącz się z obrazu SVG na PNG i podążając za Catherine Nyo, aby uzyskać obraz, który jest dwukrotnie większy niż ten, którego będziesz używać.
źródło
Jeśli używasz map vue2-google-maps jak ja, kod do ustawienia rozmiaru wygląda następująco:
źródło