Печать в веб-приложениях

Печать карты из веб-приложения представляет собой довольно сложную задачу, включающую слияние нескольких сервисов, поддержку настроек видимости слоя, добавление элементов в компоновку и отображение графики поверх карты. В целях решения этих задач ArcGIS Server включает сервис геообработки PrintingTools. При разработке веб-приложения вы можете вызвать сервис PrintingTools и получить изображение для печати высокого картографического качества. Для расширенных функций печати или печати на бумаге большого формата можно использовать скрипт Python для преобразования веб-карты в документ ArcMap (MXD) и последующего экспорта MXD-файла в различные форматы для печати.

Сервис PrintingTools

PrintingTools представляет собой предварительно настроенный сервис, доступный в папке Utilities. Этот сервис по умолчанию имеет статус "Остановлен" (Stopped). Для запуска сервиса необходимо использовать ArcGIS for Desktop или ArcGIS Server Manager, если требуется поддержка рабочих процессов печати.

Веб-интерфейсы (APIs) ArcGIS предоставляют ряд виджетов, осуществляющих обмен данными с сервисом PrintingTools для получения карты в формате для печати. Достаточно просто указать URL-адрес сервиса PrintingTools, а остальную работу сделают виджеты.

Если требуется вызов сервиса PrintingTools за пределами веб-интерфейсов APIs или необходимо запустить базовый инструмент сервиса (Export Web Map) непосредственно из ArcGIS for Desktop или скрипта Python, необходимо предоставить определение JavaScript Object Notation (JSON) для текущего состояния карты в соответствии со спецификацией ExportWebMap ESRI. Этот дополнительный рабочий процесс необязательно использовать при работе с веб-интерфейсом API.

Сервис PrintingTools включает предварительно определенный набор компоновок карты. Чтобы использовать свои собственные компоновки карты, можно опубликовать собственный сервис для печати веб-карт, созданный по аналогии с PrintingTools, и указать для него собственную папку компоновок. Дополнительные сведения по этому вопросу см. в разделах Использование собственных компоновок для печати и Руководство: публикация дополнительных сервисов для печати.

Дополнительные возможности печати с помощью Python

Для дополнительных сценариев печати (например, задачи с использованием бумаги большого формата) инструмент PrintingTools не используется вовсе. Вместо него можно использовать модуль Python arcpy.mapping, включенный в ArcGIS. Например, arcpy.mapping содержит функцию преобразования веб-карты в документ ArcMap (MXD). После создания MXD можно использовать другие функции arcpy.mapping для экспорта в различные форматы, включения в атлас или создание ссылки на данные с высоким разрешением на сервере.

Чтобы обеспечить доступ веб-приложения к скрипту Python, можно сделать скрипт доступным посредством сервиса геообработки ArcGIS Server. Дополнительные сведения см. в разделе Расширенные функции печати для веб-карт.

9/12/2013