Skip To Content

Impression avancée de cartes Web

Le service PrintingTools et ses widgets d’impression client des API Web ArcGIS ont été conçus pour une impression de base. Pour imprimer des processus dans lesquels la carte Web doit être modifiée ou exportée à l’aide d’options avancées, utilisez ConvertWebMapToArcGISProject pour ArcGIS Pro.

L’impression de cartes web dans ArcGIS repose sur la capacité de la carte web à être représentée au format JSON. Esri a créé la spécification ExportWebMap qui définit la façon dont une carte web peut être structurée au format JSON avec des informations d’étendue et de couche en vue de son impression. Les API web ArcGIS peuvent lire votre carte web existante et la mettre au format JSON pour vous. Dans un scénario d’impression simple, le service PrintingTools de ArcGIS Server lit les données JSON et retourne une carte de type image qui peut être imprimée.

Dans les scénarios plus avancés, les données JSON de la carte web n’ont pas besoin d’être envoyées au service PrintingTools. À la place, vous pouvez convertir le fichier JSON en projet ArcGIS Pro (.aprx).

Conversion d’une carte web en projet ArcGIS Pro avec Python

Pour convertir une carte web JSON en projet ArcGIS Pro (.aprx), utilisez la fonction ConvertWebMapToArcGISProject. Une fois que la carte Web est convertie, l’état complet de la carte Web existe dans le projet. Vous pouvez ensuite modifier davantage la carte Web avant impression, ou l’exporter à l’aide d’une autre fonction Python. Vous pouvez également ajouter la carte à un atlas avant de l’imprimer, ou remplacer certaines couches de service de la carte par vos propres couches vectorielles.

Pour une discussion, des scénarios et des échantillons de code plus détaillées, consultez la rubrique Impression d’une carte Web avec arcpy.mp, ce qui explique comment créer des modèles de mise en page intermédiaires, créez un script Python pour une carte Web, et créez des outils Web et des applications Web.

Appel des scripts à partir du Web

Une fois que vous avez écrit un script arcpy en vue de l’impression, ArcGIS Enterprise offre des services de géotraitement vous permettant d’exposer vos scripts, outils et modèles en tant que services web. Ils peuvent ainsi être facilement appelés à partir des API Web ArcGIS.

Vous pouvez choisir d’encapsuler votre script d’impression Python dans un outil de script de géotraitement. Procédez à un test de votre outil, puis publiez le résultat en tant que service de géotraitement ArcGIS Enterprise.

L’approche la plus facile pour développer ce type d’outil de script de géotraitement consiste à s’assurer qu’il expose les mêmes paramètres que le service PrintingTools prêt à l’emploi, ou un sous-ensemble de ce service. Le paramètre JSON en entrée est le paramètre minimum requis. Si vous concevez votre service de cette manière, les widgets d’impression de ArcGIS Web AppBuilder et les tâches d’impression des API de cartographie web et des visionneuses web ArcGIS seront en mesure de l’utiliser sans aucun codage personnalisé.