Клуб API Карт

Размер значков меток — растягивать или нет?

Пост в архиве.

Если значку метки задать размер (параметр iconImageSize) меньше размера картинки, то вплоть до версии 2.0.11 значки сжимались: http://jsfiddle.net/pP5En/


В последних версиях API значки перестали сжиматься и стали обрезаться: http://jsfiddle.net/m9yKJ/


Это баг, или так теперь всегда будет? Как теперь сжимать размеры значков?


P. S.: где ченджлог минорных версий API 2.0? Всё перерыл, нашел только в блоге посты, последний пост 2.0.9.

6 комментариев

У нас появилась новая функциональность: теперь вы можете использовать опцию iconImageClipRect = [[x1, y1], [x2, y2]], которая "вырезает" прямоугольную область из фоновой картинки (спрайта) и "заполняет" ею вашу иконку.

В случае если опция не указана и вместо спрайта используется картинка, которая больше размеров иконки, действительно закралась ошибка, которую мы исправим в следующей версии, а пока вы можете задать опцию iconImageClipRect с указанем полных размеров вашей картинки. В вашем случае это [[0, 0], [30, 42]]. Таким образом область отображения будет - вся ваша картика, смасштабированная под размеры иконки.

Спасибо, это решение сработало.

Емелин Алексей
28 января 2016, 04:01

вариант решения проблемы http://jsfiddle.net/pP5En/1/

поясню: в примере Алексея используется механизм отрисовки меток на Canvas (вместо стандартных HTML-макетов), в которой данная ошибка отсутствует.

корабли лавировали лавировали да не вылавировали

Кстати, у вас неправильно указан offset иконки: на мой взгляд оптимальным будет задать

iconImageOffset: [-3, -19]