将报表导出为 PDF (数据管理)

摘要

AllSource 报表导出至 PDF 文件。

了解有关报表以及如何进行添加、修改和共享的详细信息。

使用情况

  • 此工具基于 AllSource 工程中的报表或报表文件 (.rptx) 创建 PDF 报表

  • 如果报表或报表文件定义中存在查询,则会在现有查询中追加其他表达式。

  • 除了整个报表之外,此工具还支持页面范围设置以导出某些页面。

  • 此工具支持自定义页面编号选项,以修改起始页码和总页数。

参数

标注说明数据类型
输入报表

输入报表或 .rptx 文件。

Report; File
PDF 文件

输出 PDF 文件。

File
表达式
(可选)

用于选择记录子集的 SQL 表达式。除了任何现有表达式之外,还应用此表达式。

SQL Expression
分辨率 (DPI)
(可选)

已导出 PDF 的分辨率,单位为每英寸点数 (dpi)。

Long
影像质量
(可选)

指定 PDF 的输出图像质量。“图像质量”选项用于控制要导出的栅格化数据的质量。

  • 最佳可用的最高图像质量。这是默认设置。
  • 更佳高图像质量。
  • 正常图像质量和速度之间的折衷。
  • 较快图像质量越低,报表生成速度越快。
  • 最快图像质量最低时,创建报表的速度最快。
String
嵌入字体
(可选)

指定是否在输出报表中嵌入字体。当在未安装所需字体的计算机上查看 PDF 时,允许在字体嵌入中使用基于字体字形构建的文本和标记。

  • 选中 - 将在输出报表中嵌入字体。这是默认设置。
  • 未选中 - 不会在输出报表中嵌入字体。
Boolean
压缩向量图形
(可选)

指定是否在 PDF 中压缩矢量内容流。

  • 选中 - 将压缩矢量图形。应设置此选项,除非需要使用明文进行故障排除。这是默认设置。
  • 未选中 - 不会压缩矢量图形。

Boolean
图像压缩
(可选)

指定在输出 PDF 文件中压缩图像或栅格数据时使用的压缩方案。

  • 无图像压缩请勿压缩图像或栅格数据。
  • 游程编码 (RLE) 压缩使用游程编码压缩。
  • Deflate 压缩使用 Deflate 无损数据压缩。
  • Lempel-Ziv-Welch (LZW) 压缩使用 Lempel-Ziv-Welch 无损数据压缩。
  • 联合图像专家组 (JPEG) 压缩使用 JPEG 有损数据压缩。
  • Adaptive 压缩使用自动为页面中的每个图像选择最佳压缩类型的 Adaptive。JPEG 适用于包含许多唯一颜色的较大图像。Deflate 适用于所有其他图像。这是默认设置。
String
密码保护
(可选)

指定是否需要密码保护才能查看输出 PDF 报表。

  • 选中 - 输出 PDF 报表文档需要密码才能打开。
  • 未选中 - 无需提供密码即可打开输出 PDF 报表文档。这是默认设置。

Boolean
PDF 密码
(可选)

用于限制打开 PDF 的密码。

Encrypted String
页面范围类型
(可选)

指定要导出的报表页面范围。

  • 所有页面导出所有页面。这是默认设置。
  • 最后一页仅导出最后一页。
  • 奇数页面导出奇数页面。
  • 偶数页面导出偶数页面。
  • 自定义页面范围导出自定义页面范围。
String
自定义页面范围
(可选)

页面范围类型参数设置为自定义时要导出的页面。可设置单独页面、范围或者以逗号分隔的两者组合,例如 1, 3-5, 10

String
初始页码
(可选)

报表的初始页码来创建页面编号偏移,以将其他页面添加到报表开头。

Long
最终页码
(可选)

要在导出的 PDF 最后一页上显示的页码。

Long

arcpy.management.ExportReportToPDF(in_report, out_pdf_file, {expression}, {resolution}, {image_quality}, {embed_font}, {compress_vector_graphics}, {image_compression}, {password_protect}, {pdf_password}, {page_range_type}, {custom_page_range}, {initial_page_number}, {final_page_number})
名称说明数据类型
in_report

输入报表或 .rptx 文件。

Report; File
out_pdf_file

输出 PDF 文件。

File
expression
(可选)

用于选择记录子集的 SQL 表达式。除了任何现有表达式之外,还应用此表达式。有关 SQL 语法的详细信息,请参阅在 ArcGIS 中使用的查询表达式的 SQL 参考

SQL Expression
resolution
(可选)

已导出 PDF 的分辨率,单位为每英寸点数 (dpi)。

Long
image_quality
(可选)

指定 PDF 的输出图像质量。“图像质量”选项用于控制要导出的栅格化数据的质量。

  • BEST可用的最高图像质量。这是默认设置。
  • BETTER高图像质量。
  • NORMAL图像质量和速度之间的折衷。
  • FASTER图像质量越低,报表生成速度越快。
  • FASTEST图像质量最低时,创建报表的速度最快。
String
embed_font
(可选)

指定是否在输出报表中嵌入字体。当在未安装所需字体的计算机上查看 PDF 时,允许在字体嵌入中使用基于字体字形构建的文本和标记。

  • EMBED_FONTS将在输出报表中嵌入字体。这是默认设置。
  • NO_EMBED_FONTS不会在输出报表中嵌入字体。
Boolean
compress_vector_graphics
(可选)

指定是否在 PDF 中压缩矢量内容流。

  • COMPRESS_GRAPHICS将压缩矢量图形。应设置此选项,除非需要使用明文进行故障排除。这是默认设置。
  • NO_COMPRESS_GRAPHICS不会压缩矢量图形。
Boolean
image_compression
(可选)

指定在输出 PDF 文件中压缩图像或栅格数据时使用的压缩方案。

  • NONE请勿压缩图像或栅格数据。
  • RLE使用游程编码压缩。
  • DEFLATE使用 Deflate 无损数据压缩。
  • LZW使用 Lempel-Ziv-Welch 无损数据压缩。
  • JPEG使用 JPEG 有损数据压缩。
  • ADAPTIVE使用自动为页面中的每个图像选择最佳压缩类型的 Adaptive。JPEG 适用于包含许多唯一颜色的较大图像。Deflate 适用于所有其他图像。这是默认设置。
String
password_protect
(可选)

指定是否需要密码保护才能查看输出 PDF 报表。

  • PASSWORD_PROTECT输出 PDF 报表文档需要密码才能打开。
  • NO_PASSWORD_PROTECT无需提供密码即可打开输出 PDF 报表文档。这是默认设置。
Boolean
pdf_password
(可选)

用于限制打开 PDF 的密码。

Encrypted String
page_range_type
(可选)

指定要导出的报表页面范围。

  • ALL导出所有页面。这是默认设置。
  • LAST仅导出最后一页。
  • ODD导出奇数页面。
  • EVEN导出偶数页面。
  • CUSTOM导出自定义页面范围。
String
custom_page_range
(可选)

page_range_type 参数设置为 CUSTOM 时要导出的页面。可设置单独页面、范围或者以逗号分隔的两者组合,例如 1, 3-5, 10

String
initial_page_number
(可选)

报表的初始页码来创建页面编号偏移,以将其他页面添加到报表开头。

Long
final_page_number
(可选)

要在导出的 PDF 最后一页上显示的页码。

Long

代码示例

ExportReportToPDF 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何使用 ExportReportToPDF 工具。

import arcpy
arcpy.ExportReportToPDF_management("C:/data/sample.rptx", "C:/data/samplePDF.pdf", 
                                   "STATEFIPS = 42", 96, 'BETTER', 'EMBED_FONTS', 
                                   'COMPRESS_GRAPHICS', 'ADAPTIVE', 
                                   'PASSWORD_PROTECT', "password", 'CUSTOM', 
                                   "1-10")
ExportReportToPDF 示例 2(独立脚本)

使用 ExportReportToPDF 工具在对数据源执行选择后导出报表。

# ExportReportToPDF.py
# Simple example of the Export Report to PDF tool
# Import system variables
import arcpy
# Set the workspace
arcpy.env.workspace = "C:/data/cities.gdb"
# Set local variables
in_layer = 'cities'
in_report = 'US Cities Report'
out_PDF = 'C/data/cities.pdf'
# Modify the report data source by selecting only the records where 
# POP1990 < 50000
arcpy.SelectLayerByAttribute_management(in_layer, 'NEW_SELECTION', 
                                        'POP1990 < 50000')
# Export the report with the layer selection set
arcpy.ExportReportToPDF_management(in_report, out_PDF)
ExportReportToPDF 示例 3(独立脚本)

除了 ExportReportToPDF 工具之外,还使用 Python API。

# ExportReporttoPDFAPI.py
# Simple example of exporting a report using Python
# Import system variables import arcpy
# Identify all parcel reports in a project aprx = arcpy.mp.ArcGISProject("C:/data/parcels/Parcels.aprx") report = aprx.listReports("Parcels Report")[0]
# Export the report with a definition query arcpy.ExportReportToPDF_management(report.name, "C:/data/parcels/ParcelsPDF.pdf",                                    ' "LotSize" > 325 ')

环境

此工具不使用任何地理处理环境。