Как уменьшить размер значка в openlayers 3, я использую карты Bing

Это мой код:

var iconFeature = new ol.Feature({
   geometry: new ol.geom.Point(ol.proj.transform([-95.3698,29.7604], 'EPSG:4326' , 'EPSG:3857')),
   name: 'Null Island',
});

var iconStyle = new ol.style.Style({
  image: new ol.style.Icon({
    opacity: 0.75,
    src: 'flag.png',
    height:10,
    width:10,
  })
});
iconFeature.setStyle(iconStyle);

Я также пытался использовать привязку, но я не мог уменьшить размер, пожалуйста, помогите


person user1960217    schedule 05.03.2015    source источник


Ответы (1)


ol.style.Icon принимает параметр scale, который можно использовать для масштабирования значка. .

var iconStyle = new ol.style.Style({
  image: new ol.style.Icon({
    opacity: 0.75,
    src: 'flag.png',
    // the real size of your icon
    size: [10, 10],
    // the scale factor
    scale: 0.5
  })
});
person tsauerwein    schedule 06.03.2015
comment
Н.Б. Это сингулярное значение, а не индивидуальное масштабирование x/y. Действительно нуждается в масштабировании x/y, чтобы быть полезным для некоторых задач. - person ; 20.05.2015
comment
похоже, что до сих пор нет способа масштабировать вместо кадрирования с помощью imgSize. github.com/openlayers/openlayers/issues/2720 - person Michael; 11.11.2018