web-dev-qa-db-de.com

X- und Y-Position der benutzerdefinierten Beschriftung in Google Maps

Ich versuche, die x- und y-Position meines benutzerdefinierten Etiketts anzupassen. Ist das möglich? Ich habe noch keine Dokumentation zu diesem Thema gefunden.

numberMarkerImg = {
    url: '../images/mobile/map-marker.png',
    size: new google.maps.Size(32, 38),
    scaledSize: new google.maps.Size(32, 38)
};

// Letter markers
marker = new google.maps.Marker({
    position : point,
    map      : map,
    icon     : numberMarkerImg,
    draggable: false,
    labelClass: "labels",
    label: {
        text: saved_label,
        color: 'black',
        fontSize: '12px',
        x: '200',
        y: '100'
    }
});
18
user992731

"labelOrigin" musste übergeben werden, da ich einen benutzerdefinierten Marker verwende.

   numberMarkerImg = {
        url: '../images/mobile/map-marker.png',
        size: new google.maps.Size(32, 38),
        scaledSize: new google.maps.Size(32, 38),
        labelOrigin: new google.maps.Point(9, 9)
   };
28
user992731

In Google Maps API v3 können Sie nicht MarkerLabel Position festlegen. Es gibt keine x und y Optionen.

Der Doc sagt auch:

Wenn Sie es mit einer benutzerdefinierten Markierung verwenden, können Sie es mit der labelOrigin-Eigenschaft in der Icon-Klasse neu positionieren.

Wie ich sehen kann, verwenden Sie benutzerdefinierte Marker. Vielleicht ist dies der richtige Weg für Sie.

Alternativ schauen Sie sich MarkerWithLabel an. Ist eine Erweiterung des Standardobjekts Marker mit weiteren verfügbaren Optionen. Kleine Demo: http://jsfiddle.net/LLd4drvx/239/ .

4
martin