当您需要 ArcGIS Enterprise 中默认 PrintingTools 服务范围之外的打印功能时,您可以在 ArcGIS Pro 中创建自定义布局。 您既可以将这些布局作为 Web 工具共享到门户,也可以将其作为地理处理服务发布到独立 ArcGIS Server 站点。 启用打印的地理处理服务被称为打印服务。
切勿更新默认 PrintingTools 服务随附的布局,或添加新布局和重新发布此服务。 相反,请运行 ArcGIS Pro 中的导出 Web 地图脚本工具并将结果共享,用作 Web 地图打印的其他资源。
如果将 Web 工具共享到门户,本教程的结果将共享到您登录的 ArcGIS Enterprise 门户,且作为 Web 工具基础的打印服务将保存到您指定的联合 ArcGIS Server。
如果正在使用独立服务器站点,则本教程将基于 ArcGIS Pro 中运行的输出 Web 地图和获取布局模板信息工具生成打印服务。
创建自定义布局
如果要创建自定义布局模板,可以在 ArcGIS Pro 中执行此操作。 有关信息,请参阅 ArcGIS Pro 中的布局。 将布局保存到文件夹:在共享选项卡的另存为组中,单击布局文件。 或者,右键单击目录窗格中的布局,然后选择另存为布局文件。
注:
要支持在 ArcGIS Pro 3.0 及更高版本中创作的自定义布局,您的组织必须使用 11.0 或更高版本的 ArcGIS Server。
准备布局
在 ArcGIS Pro 中创建用于 ArcGIS Enterprise 门户的布局时,以下最佳做法可供使用:
- 如果布局中有多个地图框,请标识希望 Web 工具使用的地图框并将其命名为 WEBMAP_MAP_FRAME(区分大小写)。 打印服务将使用以此命名的地图框。
- 插入动态文本,例如标题、作者姓名等。 要了解有关动态文本的详细信息,请参阅 ArcGIS Pro 文档中的什么是动态文本?。 要插入动态文本,请完成以下步骤:
- 从功能区的插入选项卡,选择文本组中的文本命令。
- 单击布局上的位置以定位新的文本元素。
- 打开文本元素的属性页面。
- 将以下标签之一插入到所选元素的文本属性:
titleText
<dyn type="layout" property="metadata" attribute="title" emptyStr=""/> authorText
<dyn type="layout" property="metadata" attribute="contactname" emptyStr=""/> copyrightText
<dyn type="layout" property="metadata" attribute="credits" emptyStr=""/> 注:
每个文本元素只能添加一个动态文本标签。
- 您也可以从动态文本下拉菜单中的系统类别添加当前时间动态文本元素。 这也位于插入功能区的文本组。
- 要插入自定义文本元素,请添加文本元素并将元素的名称嵌入一对大括号中,例如 {parcel-id}。
- 如果要插入比例尺,建议您选择在中心处计算选项,它使用地图框的中心(而非赤道上某一位置)来计算地图比例。 不建议将此选项用于比例文本(例如 1:3,000)。
- 在 11.2 中引入,您还可以将属性和统计数据作为动态文本元素添加到布局中。
警告:
请勿在布局中插入用户动态文本。 该动态文本会填充有关打印服务的敏感信息。
使用 ArcGIS Server 注册布局模板文件夹
包含布局模板的文件夹必须可访问 ArcGIS Server(无论是与门户网站联合的服务器还是独立服务器)。 如果服务器可以访问该文件夹,则可以将其注册到服务器;否则,共享 Web 工具或发布打印服务时,需要将文件夹的内容从 ArcGIS Pro 复制到服务器。
有关说明,请参阅 ArcGIS Pro 帮助中的管理注册的数据存储。
准备自定义工具
准备就绪后,使用包含自定义布局模板的文件夹运行导出 Web 地图脚本工具。 接下来,运行获取布局模板信息脚本工具(引用同一文件夹)。
- 在地理处理窗格中,浏览至工具箱 > 服务器工具 > 打印。
- 双击导出 Web 地图工具将其打开。
- 将作为 JSON 的 Web 地图参数保留为 #。
要获得可打印图像,此服务的用户将提交自己的 Web 地图 JSON 用于此参数。 ArcGIS Web API、ArcGIS Enterprise 应用程序模板和 ArcGIS Web AppBuilder 中的打印微件生成此 JSON。
- 使输出文件参数保持不变。
将此工具发布到服务器之后,输出将被放置在服务器作业目录中。
- 对于布局模板文件夹参数,单击浏览按钮并浏览至存储布局的文件夹。
提示:
如果您只想参考使用 ArcGIS Enterprise 安装的基本布局,请将此参数留空。
- 您可以从布局模板下拉列表中选择布局。
这将是用户运行服务时的默认布局。
- 单击运行以运行此工具。
- 浏览至工具箱 > 服务器工具 > 打印,然后双击 Get Layout Templates Info 脚本工具将其打开。
- 图例
- 标题文本
- 版权文本
- 作者文本
- 自定义文本元素
- 选择运行步骤 5 中导出 Web 地图工具时指定的与布局模板文件夹相同的文件夹。 单击运行以运行此脚本。
获取布局模板信息脚本工具允许将获取布局模板信息任务添加至打印服务。 该任务提供布局页面的大小和地图框的大小。 还会显示下列布局元素是否可用:
现在,您已经使用自定义布局运行了两个地理处理工具,可以将结果共享给 ArcGIS Enterprise。 接下来要执行的工作流取决于您是否正在使用 ArcGIS Enterprise 门户(具有一个或多个联合服务器站点)或独立服务器站点。
在 ArcGIS Enterprise 门户中使用自定义打印模板
您可以将布局模板 (.pagx) 和报告模板 (.rptt) 上传为可传递到各个打印服务的门户项目。 请按照以下步骤上传自定义打印模板:
- 在 ArcGIS Pro 中创建布局或报告模板。
- 将模板另存为 .pagx 或 .rptt 文件。
- 登录门户。
- 单击内容。
- 单击新建项目。
- 拖放模板文件或单击您的设备并选择文件。
您的模板现在可以通过 Layout_Item_ID 和 Report_Item_ID 参数传递到打印服务。
局限性
使用自定义打印模板时存在以下限制:
- 项目必须位于联合打印服务服务器的同一门户中。 例如,在门户 A 上运行的打印服务无法访问门户 B 中的项目。
- 开箱即用打印服务和 ArcGIS GIS Server 的默认打印服务不支持此功能。
- Web 客户端当前不支持此功能。 相反,您必须编写自定义 Javascript API。
将打印服务发布到 ArcGIS Enterprise 门户以启用报告
在 11.2 中引入,您可以从 ArcGIS Pro 3.2 或更高版本发布打印服务,以启用基于布局模板 (.pagx)、报告模板 (.rptx) 或两者的报告打印。
报表类型
您可以通过打印服务生成三种类型的报告:
- 具有动态文本元素的布局 - 单页面输出,包括通过动态文本元素显示的地图以及属性和统计数据。
- 不带地图的报告 — 多页输出,可包含属性、统计数据、图表和附件。 仅支持 PDF 格式。
- 带或不带动态文本元素和报告的布局 - 包含布局和报告的多页输出。 仅支持 PDF 格式。
发布报表
要发布报告,请执行以下步骤:
局限性
使用报告时,存在以下限制:
- 开箱即用打印服务和 ArcGIS GIS Server 的默认打印服务不支持此功能。
- Map Viewer 和 ArcGIS Experience Builder 不支持此功能。
- Web 客户端当前不支持此功能。 相反,您必须使用 Javascript API 创建自定义应用程序或微件。
将打印 Web 工具共享到 ArcGIS Enterprise 门户
如果您使用 ArcGIS Enterprise 门户,请按照以下步骤将地理处理工具的结果作为 Web 工具共享给门户:
- 在功能区的分析选项卡上,单击历史记录,或单击目录窗格中的历史记录选项卡。 右键单击导出 Web 地图结果,并选择共享为 > Web 工具。
共享为 Web 工具对话框随即出现。
- 使用分析选项识别任何可能的问题。
- 在对话框的常规选项卡上,根据需要替换项目详细信息(名称、摘要和标签)中的默认值。 如果您如上所述将布局模板文件夹注册到服务器,请选择引用注册数据选项;否则,选择复制所有数据。 指定要保存 Web 工具的门户文件夹、联合 ArcGIS Server 站点和要保存其基础地理处理服务的服务器文件夹。 然后,为此 Web 工具设置共享选项。
- 切换到配置选项卡。 在参数部分中指定工具的执行模式选项。 在大多数情况下,需选择同步。 如果对工具的期望请求时间超过几秒钟(例如打印大型精细地图时),请选择异步。 然后,设置工具的日志记录消息级别值。
- 切换到目录选项卡。 单击添加工具并添加获取布局模板信息结果。
您运行的两个工具现已整合到此 Web 工具中。
- 单击共享以共享 web 工具。
- 验证 web 工具是否正确发布。
Web 工具可用于您的 ArcGIS Enterprise 门户,其基础地理处理服务可用于 ArcGIS Server Manager。
现在,您可以在 ArcGIS Web API 提供的打印微件以及门户地图查看器中引用新的 Web 工具。 Web 工具的 URL 可从其 ArcGIS Enterprise 门户中的项目页面获取。
Web 工具由联合 ArcGIS Server 站点中的自定义打印服务提供支持。 您可以将此服务指定为 ArcGIS Enterprise 门户的打印服务。 打开 ArcGIS Server Manager 并定位服务,然后复制其 URL(包括导出 Web 地图任务),然后将其粘贴在实用程序服务对话框中以进行打印。
将打印服务发布到独立服务器
如果使用 10.6 或更高版本的独立 ArcGIS Server 站点,可以按照以下步骤从 ArcGIS Pro 将打印服务发布到服务器。
- 将管理员连接添加到 ArcGIS Server 站点。
要将地理处理服务发布到独立服务器,该连接必须是管理员连接。
- 在目录窗格中,右键单击服务器连接,然后选择发布。 使用地理处理服务选项启动选定历史记录项目窗口。 从列表中选择导出 Web 地图项目以启动发布地理处理服务窗口。
- 使用分析选项识别任何可能的问题。
- 在对话框的常规选项卡上,根据需要替换项目详细信息(名称、摘要和标签)中的默认值。 如果您如上所述将布局模板文件夹注册到服务器,请选择引用注册数据选项;否则,选择复制所有数据。 指定用于保存其基础地理处理服务的服务器文件夹。 然后,为此 Web 工具设置共享选项。
- 切换到配置选项卡。 在参数部分中指定工具的执行模式选项。 在大多数情况下,需选择同步。 如果预期打印服务请求时间会超过几秒钟(例如打印大型精细地图时),请选择异步。 然后,设置工具的日志记录消息级别值。
- 切换到目录选项卡。 单击添加工具并添加获取布局模板信息结果。
您运行的两个工具现已整合到此打印服务中。
- 单击发布以开始发布打印服务。
- 验证打印服务是否正确发布。
它在 ArcGIS Server Manager 中可用。
由 ArcGIS Web API 提供的打印微件现可引用您的新服务。 可在您的 ArcGIS 服务目录中找到打印服务的 URL。
要通过 ArcGIS Enterprise 门户注册自定义打印服务,复制此 URL(包括导出 Web 地图任务),然后将其粘贴在实用程序服务对话框中以进行打印。 请注意,门户仅接受使用 HTTPS 的 URL 用于其打印实用程序服务。
更新布局模板
如果要更新布局模板文件夹中的布局,需要根据共享前是否将布局模板文件夹注册到服务器来确定相应的工作流(请参阅上述“将布局模板注册到 ArcGIS Server”部分)。 要将布局添加到文件夹还是更新现有布局也很重要。 这是因为您创建的地理处理任务会保留运行时布局模板文件夹中的布局列表。
如果共享前将布局模板文件夹注册到服务器,则意味着服务器可以访问布局。 如果您更新文件夹中的现有布局文件 (.pagx),则您修改的布局将立即可用。 但是,服务器将不会看到您在共享后添加的任何新布局。
因此,如果存在以下任一情况,您将需要重做上述工作流并共享新的 Web 工具或打印服务,以便您的更改可供 ArcGIS Server 用户使用:
- 共享 Web 工具或打印服务前未将布局模板文件夹注册到服务器,这意味着在发布时将布局复制到服务器。
- 共享 Web 工具或打印服务后,您想要将新的布局模板添加到该文件夹,并使其可供用户使用。