Frage

Ich bin mit einem Bild meiner Karte angezeigt werden mit Openlayers. Mein JS-Code sieht wie folgt aus:

map = new OpenLayers.Map('map');

var options = {numZoomLevels: 7,
                isBaseLayer: true,
                };

var globe = new OpenLayers.Layer.Image(
    'Globe ESA',
    'http://upload.wikimedia.org/wikipedia/commons/0/07/World_map_blank_black_lines_4500px.gif',
    new OpenLayers.Bounds(-180, -90, 180, 90),
    new OpenLayers.Size(4500, 2234),
    options);

map.addLayers(globe);

markers = new OpenLayers.Layer.Markers("markers");
map.addLayer(markers);

map.addControl(new OpenLayers.Control.LayerSwitcher());
map.zoomToMaxExtent();
map.addControl(new OpenLayers.Control.MousePosition());

Meine CSS ist:

#map {
    width: 640px;
    height: 480px;
    border: 1px solid black;
}

Aber ich kann nicht bekommen Openlayers um das große Bild zu verkleinern. Es wird immer mit voller Auflösung angezeigt und ich kann nicht Auszoomen den ganzen Globus angezeigt werden soll. Hilfe bitte.

War es hilfreich?

Lösung

Sie müssen die Größe des Bildes setzen, wie es, wenn sie vollständig angezeigt werden soll gezoomt werden.

var globe = new OpenLayers.Layer.Image(
    'Globe ESA',
    'http://upload.wikimedia.org/wikipedia/commonS/0/07/World_map_blank_black_lines_4500px.gif',
    new OpenLayers.Bounds(-180, -90, 180, 90),
    new OpenLayers.Size(1125,558),
    options);

änderte ich die Größe auf ein Viertel der Größe des Originals. Sie könnten diese kleiner machen, wenn Sie es noch vergrößert werden.

gesucht
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top