Я пытаюсь распечатать определенную зону на картах Arcgis с помощью JS API (а не отображаемого расширения).
Я не нашел для этого никакого метода или варианта, поэтому я попытался изменить расширение, а затем распечатать карту:
var extent = new esri.geometry.Extent(
-620526.0922336339,
5993991.149960931,
108988.90572005256,
6293624.300838808,
myMap.spatialReference
);
myMap.setExtent(extent, true).then(function() {
console.log('setExtend is finished');
var template = new esri.tasks.PrintTemplate();
template.exportOptions = {
width : 500,
height : 500
};
template.format = 'jpg';
template.layout = 'MAP_ONLY';
var params = new esri.tasks.PrintParameters();
params.map = myMap;
params.template = template;
var printTask = new esri.tasks.PrintTask(urlToThePrintServer);
printTask.execute(params);
});
Поскольку setExtent является асинхронным и возвращает отложенный, я должен использовать метод then.
Я вижу, как карта движется, но отложенный, похоже, не работает ... (я не вижу console.log ()).
- есть ли другой способ распечатать определенную часть карты?
- если нет, то почему никогда не вызывается метод then?
(Я использую 3.12 JS API)