باستخدام PNG أو JPEG للخريطة مع OpenLayers (مقياس / تكبير المشكلة)
-
03-07-2019 - |
سؤال
وأنا باستخدام صورة للعرض خريطتي مع OpenLayers. قانون بلدي JS يبدو مثل هذا:
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());
وبلدي CSS هو:
#map {
width: 640px;
height: 480px;
border: 1px solid black;
}
ولكن لا أستطيع الحصول على OpenLayers إلى تقليص الصورة الكبيرة. ومن عرضه دائما في حل كامل وأنا لا أستطيع التصغير لعرض العالم كله. مساعدة من فضلك.
المحلول
وتحتاج إلى تعيين حجم الصورة كما يجب عرض عند التكبير بشكل كامل.
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);
ولقد غيرت الحجم إلى ربع حجم الأصلي. هل يمكن أن تجعل هذا أصغر إذا كنت تريد أكثر من ذلك التصغير.
لا تنتمي إلى StackOverflow