Der PrintingTools-Service und die zugehörigen Widgets für Client-Druck in den ArcGIS-Web-APIs sind für grundlegende Druckfunktionen vorgesehen. Für das Drucken von Workflows, in denen die Webkarte mithilfe erweiterter Optionen geändert oder exportiert werden muss, verwenden Sie ConvertWebMapToArcGISProject für ArcGIS Pro.
Das Drucken von Webkarten in ArcGIS hängt davon ab, ob die Webkarte im JSON-Format dargestellt werden kann. Die ExportWebMap-Spezifikation definiert, wie eine Webkarte im JSON-Format mit Ausdehnungs- und Layer-Informationen zum Drucken strukturiert werden kann. Die ArcGIS-Web-APIs können die aktuelle Webkarte lesen und die JSON-Datei für Sie erstellen. In einem einfachen Druckszenario liest der PrintingTools-Service von ArcGIS Server die JSON-Datei und gibt ein Kartenbild zurück, das gedruckt werden kann.
In erweiterten Druckszenarien muss die JSON-Datei der Webkarte nicht an den PrintingTools-Service gesendet werden. Stattdessen können Sie die JSON-Datei in ein ArcGIS Pro-Projekt (.aprx) konvertieren.
Konvertieren einer Webkarte in ein ArcGIS Pro-Projekt mit Python
Verwenden Sie zum Konvertieren einer Webkarten-JSON in ein ArcGIS Pro-Projekt (.aprx) die Funktion ConvertWebMapToArcGISProject. Nachdem die Webkarte konvertiert wurde, ist ihr vollständiger Status im Projekt vorhanden. Die Webkarte kann anschließend vor dem Drucken weiterbearbeitet oder mit einer anderen Python-Funktion exportiert werden. Sie können auch die Karte vor dem Drucken einem Kartenbuch hinzufügen oder einige der Service-Layer auf der Karte durch eigene Vektor-Layer austauschen.
Ausführlichere Erläuterungen, Szenarien und Codebeispiele finden Sie unter Drucken von Webkarten mit arcpy.mp. Dieses Thema enthält Informationen zum Verfassen von bereitgestellten Layout-Vorlagen und von Python-Skripten für eine Webkarte sowie zum Erstellen von Web-Werkzeugen und Web-Apps.
Bei der Installation von ArcGIS Pro 3.1 wird auch eine Tollbox mit dem Namen PrintingTools.atbx verfügbar gemacht. Sie enthält die vorkonfigurierten Skriptwerkzeuge "Webkarte exportieren" und "Layout-Vorlageninformationen abrufen", um das Schreiben ArcPy-basierter Druckservices zu vereinfachen. Die Toolbox befindet sich im Verzeichnis <ArcGIS Pro installation location>\Resources\ArcToolBox\Templates\PrintService.
Abrufen von Skripten aus dem Web
Nachdem Sie ein arcpy-Skript für den Druckvorgang geschrieben haben, bietet ArcGIS Enterprise Geoverarbeitungsservices, mit denen sich Skripte, Werkzeuge und Modelle als Web-Services bereitstellen lassen. Auf diese Weise können Sie über ArcGIS-Web-APIs abgerufen werden.
Sie können das Python-Skript in einem Geoverarbeitungsskriptwerkzeug kapseln. Führen Sie einen Testlauf für das Werkzeug durch, und veröffentlichen Sie das Ergebnis als ArcGIS Enterprise-Geoverarbeitungsservice.
Stellen Sie beim Entwickeln eines Geoverarbeitungsskriptwerkzeugs dieses Typs sicher, dass es die gleichen Parameter wie der Standardservice PrintingTools oder eine Teilmenge dieses Service bereitstellt. Der Eingabe-JSON-Parameter ist der erforderliche Mindestparameter. Wenn Sie den Service auf diese Weise entwerfen, können die Druck-Widgets aus ArcGIS Web AppBuilder und die Druck-Tasks der ArcGIS Web Mapping APIs und Web Viewer den Service verwenden, ohne dass Sie benutzerdefinierten Code bereitstellen müssen.