Existen varias formas de generar un documento imprimible desde una aplicación Web. De forma predeterminada, ArcGIS for Server incluye un servicio de geoprocesamiento llamado PrintingTools. Las aplicaciones web invocan el servicio PrintingTools y obtienen un documento que se puede imprimir. También puede crear un servicio de impresión personalizado usando sus propios diseños en lugar de los del servicio PrintingTools predeterminado. En el caso de las impresiones avanzadas, puede utilizar una secuencia de comandos de Python para convertir el mapa web en un documento de ArcMap (MXD) y exportar el MXD a diversos formatos de impresión.
La impresión puede configurarse para Portal for ArcGIS, plantillas de aplicación Web, Web AppBuilder for ArcGIS y para aplicaciones creadas utilizando la API Web de ArcGIS. Consulte Configurar el portal para imprimir mapas en la Guía del administrador de Portal para obtener más información sobre cómo proporcionar al portal, incluyendo cualquier aplicación creada con Web AppBuilder o plantillas de aplicación Web, funciones de impresión.
El servicio PrintingTools
PrintingTools es un servicio preconfigurado de la carpeta Utilidades que crea un documento imprimible usando un diseño de un conjunto de diseños de mapa predefinidos. Entre estos se incluyen diseños básicos con tamaños de papel de 8,5 por 11 pulgadas, 11 por 17 pulgadas, A3 y A4 en las orientaciones horizontal y vertical. Cada diseño contiene una flecha de norte, barra y relación de escala, leyenda, fecha y título. Los formatos de salida admitidos del servicio PrintingTools son PDF (georreferenciado), PNG32, PNG8, JPG, GIF, EPS, SVG y SVGZ.
El servicio PrintingTools se detiene por defecto. Debe utilizar ArcGIS Desktop o ArcGIS Server Manager para iniciar el servicio si desea soportar la impresión de flujos de trabajo. Una vez iniciado el servicio PrintingTools, puede acceder a él usando una URL con el formato siguiente: https://webadaptor.domain.com/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task.
Las APIs web ArcGIS ofrecen widgets que pueden comunicarse con el servicio PrintingTools para obtener un mapa para imprimir. Proporciona la dirección URL del servicio PrintingTools y los widgets hacen el resto del trabajo. Para obtener más información sobre el uso del servicio PrintingTools con su implementación de Portal for ArcGIS, consulte Configurar el portal para imprimir mapas.
Cuando se almacena en caché su servicio de mapas, el servicio HerramientasdeImpresión puede usar una resolución que es demasiado baja (por ejemplo, 96 ppi) para la impresión de gran formato o de alta calidad. Para imprimir a resoluciones más altas, se recomienda habilitar capas dinámicas en el servicio de mapas almacenado en caché. Esto permite que el servicio de impresión obtenga imágenes de mapa (a través de una solicitud de exportación de mapa) a la resolución deseada (por ejemplo, 300 ppi) en lugar de teselas con una resolución más baja. Para obtener más información, consulte Acerca de las capas dinámicas.
Desde la versión 10.4, hay una nueva tarea disponible en el servicio PrintingTools: Obtener información de plantillas de diseño. Esta tarea proporciona el tamaño de la página de diseño y el tamaño del marco de datos activo. También muestra si los siguientes elementos de diseño están disponibles:
- Leyenda
- Texto del título
- Texto de copyright
- Texto de autor
- Elementos de texto personalizados
También puede agregar esta tarea a los servicios de impresión personalizados. Para obtener instrucciones, consulte Tutorial: Publicar servicios adicionales para imprimir.
Servicios de impresión personalizados
Si desea utilizar sus propios diseños de mapa, puede publicar su propio servicio para la impresión de mapas web similar a PrintingTools. Después, configure este servicio para hacer referencia a su propia carpeta de documentos de ArcMap (MXD) que preparó con varios diseños de mapas.
Puede encontrar instrucciones para publicar su propio servicio de impresión web (y dirigirlo a su carpeta de diseños) en Tutorial: Publicar servicios adicionales para imprimir. El tutorial también explica qué hacer si posteriormente decide que desea actualizar sus diseños. Su enfoque de actualización variará en función de si registró o no su carpeta de diseños con el servidor antes de publicar y el tutorial contiene instrucciones para ambos escenarios.
Tenga en cuenta que existen consideraciones adicionales en el tutorial para publicar y consumir servicios de impresión personalizados en Portal for ArcGIS. El servicio de impresión personalizado debe publicarse como servicio de geoprocesamiento sincrónico, mientras que la URL del servicio de impresión debe usar HTTPS para que el portal lo acepte como su servicio de impresión. Para obtener más información sobre el uso de un servicio de impresión personalizado con su implementación de Portal for ArcGIS, consulte Configurar el portal para imprimir mapas.
Los servicios de impresión personalizados pueden imprimir diseños que utilizan varios marcos de datos. El servicio solo reemplaza el mapa en el marco de datos activo; sin embargo, si los marcos de datos tienen alguna relación entre ellos, como un rectángulo de extensión, el servicio de impresión respeta esa relación. Por ejemplo, suponga que tiene un diseño con dos marcos de datos: un mapa principal y otro de vista general. El mapa de vista general incluye un rectángulo de extensión que muestra la extensión actual del mapa principal. Antes de utilizar este diseño con su servicio de impresión personalizado, debe asegurarse de que el marco de datos del mapa principal es el marco de datos activo. Cuando un usuario Web solicita un mapa con su diseño, el mapa principal mostrará la vista actual del mapa Web y el rectángulo de extensión del mapa de vista general mostrará la extensión del mapa principal como se espera.
Leyendas
Independientemente de que use PrintingTools o un servicio de impresión personalizado, las leyendas de su salida impresa se comportarán de manera similar. Al imprimir servicios de entidades, la leyenda del documento impreso solo incluirá las entidades encontradas en la extensión de mapa, mientras que las leyendas de otros tipos de servicio incluirán todas las entidades, independientemente de la extensión de mapa.
Impresión avanzada usando Python
Para casos de impresión avanzada, no se utiliza HerramientasdeImpresión; en su lugar, debe usar la función ConvertWebMapToMapDocument del módulo arcpy.mapping de Python que se incluye con ArcGIS. Una vez que el documento se convierte, el mapa web completo existe en el documento de mapa. Se pueden realizar más modificaciones en el documento de mapa antes de imprimirlo o exportarlo a un formato común como PDF.
La función ConvertWebMapToMapDocument se usa normalmente para reemplazar las capas de servicio con datos vectoriales locales, crear libros de mapas, controlar el aspecto de la leyenda y exportar diferentes formatos con las opciones avanzadas.
Para hacer que la secuencia de comandos de Python esté disponible para una aplicación web, puede exponer la secuencia de comandos mediante un servicio de geoprocesamiento de ArcGIS Server. Consulte Opciones avanzadas para imprimir mapas Web para obtener más información.