Get Layout Templates Info (Server)

Summary

Returns the content of layout templates in JavaScript Object Notation (JSON) format. Layout files (.pagx files) located in a folder are used as layout templates.

Usage

  • This tool is intended to be published as a geoprocessing task within a printing service. It is also used by the preconfigured PrintingTools service.

  • The output of this tool is a string formatted as JSON. The string is a list of available layout files (.pagx files) and the following information:

    • The size and units of the page layout
    • The size of a map frame
      • If there are multiple map frames on the layout, it returns information only for the map frame that is named WEBMAP_MAP_FRAME
    • Availability of following layout elements:
      • Legend element
      • Title text element
      • Copyright text element
      • Author text element
      • Custom text elements and their names and existing values
    Note:

    The sizes are returned in the unit that is saved with the layout file.

    A sample output JSON

    [{
      "layoutTemplate": "A4 Landscape",      //name of the layout
      "pageSize": [29.7, 21],                //page size
      "pageUnits": "CENTIMETER",             //page units
      "activeDataFrameSize": [27.75, 15.91], //size of the map frame
      "layoutOptions": {
        "hasAuthorText": true,               //is the predefined AuthorText available
        "hasCopyrightText": true,            //is the predefined CopyrightText available
        "hasTitleText": true,                //is the predefined TitleText available
        "hasLegend": true,                   //is legend element available
        "customTextElements": []
      }
    },
    {
      "layoutTemplate": "MyTemplatesWithCustomTextElements",
      "pageSize": [11, 8.5],
      "pageUnits": "INCH",
      "activeDataFrameSize": [6.65, 7.34],
      "layoutOptions": {
        "hasAuthorText": false,
        "hasCopyrightText": true,
        "hasTitleText": true,
        "hasLegend": true,
        "customTextElements": [               //available list of custom text elements
          { "CityName": "Redlands" },
          { "MapCenterCoordinates": "" }
          { "SelectedParcelID": ""}
        ]  
    }
    }]
  • The tool should use the same folder location that is used by the associated Export Web Map tool.

  • For more information, see Printing in web applications in the ArcGIS Enterprise help.

Syntax

arcpy.server.GetLayoutTemplatesInfo({Layout_Templates_Folder})
ParameterExplanationData Type
Layout_Templates_Folder
(Optional)

Full path to the folder where layout files (.pagx files), to be used as layout templates, are located. The default location is <install_directory>\Resources\ArcToolBox\Templates\ExportWebMapTemplates.

Folder

Derived Output

NameExplanationData Type
Output_JSON

A JSON formatted string. The string is a list of available layout files (.pagx files) and additional information. See the tool's usage tips for more information.

String

Code sample

GetLayoutTemplatesInfo example (Python window)

The following script returns a list of metadata for each layout.

import arcpy
arcpy.GetLayoutTemplatesInfo_server(r'C:\Data\MyLayouts')

Environments

This tool does not use any geoprocessing environments.

Licensing information

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

Related topics