描述
以可伸缩矢量图形 (SVG) 格式导出地图文档 (.mxd) 的页面布局或数据框。
讨论
SVG 是一种基于 XML 的文件格式,专门适用于在 Web 上进行文件的查看。SVG 可以同时包含矢量信息和栅格信息。对于在网页中显示的地图,SVG 是一个不错的选择,因为它可以缩放并且比栅格文件更易于编辑。自从万维网联盟 (W3C) 选择将 SVG 作为其标准矢量 Web 格式后,SVG 得到了广泛应用。某些 Web 浏览器可能需要安装插件才能查看 SVG 文件;较早的浏览器可能根本无法查看 SVG 文件。SVG 支持字体嵌入,因此即使用户尚未安装 Esri 字体也可以使用正确符号系统查看导出的 ArcMap SVG 文件。ArcMap 也可以生成压缩的 SVG 文件。如果启用此选项,文件扩展名变为 *.SVGZ。
要导出单个数据框(而不是整个页面布局),可将 DataFrame 对象传给函数的 data_frame 参数。由于数据框导出不具有可提供高度和宽度信息的关联页面,所以必须通过 df_export_width 和 df_export_height 参数来提供此信息。
对于页面布局导出和数据框导出,控制生成图像图形质量的方式有所不同。导出页面布局时,通过更改 resolution 参数来控制图像细节。导出数据框时,保持 resolution 参数的默认值,更改 df_export_width 和 df_export_height 参数来更改图像细节。高度和宽度参数直接控制在导出文件中生成的像素数,且仅在导出数据框时使用。像素数较高的图像具有较高的图像细节。对于大多数页面布局导出,默认参数值应在第一次尝试时生成良好的结果和美观的导出图像。对于数据框导出,您可能需要对 df_export_width 和 df_export_height 值进行若干次试验,之后才能得到理想的结果。
有关导出地图的详细信息,请参阅 ArcGIS 帮助中的导出地图主题。
语法
ExportToSVG (map_document, out_svg, {data_frame}, {df_export_width}, {df_export_height}, {resolution}, {image_quality}, {compress_document}, {picture_symbol}, {convert_markers}, {embed_fonts})
参数 | 说明 | 数据类型 |
map_document | 引用 MapDocument 对象的变量。 | MapDocument |
out_svg | 用于表示输出导出文件的路径和文件名的字符串。 | String |
data_frame | 引用 DataFrame 对象的变量。使用字符串/常量“PAGE_LAYOUT”可以导出地图文档的页面布局,而非单个数据框。 (默认值为 PAGE_LAYOUT) | Object |
df_export_width | 用于定义数据框导出的导出图像宽度(以像素为单位)的数字。仅当导出数据框时,才能使用 df_export_width。导出页面布局将使用地图文档页面宽度,而非 df_export_width。 (默认值为 640) | Integer |
df_export_height | 用于定义数据框导出的导出图像高度(以像素为单位)的数字。仅当导出数据框时,才能使用 df_export_height。导出页面布局将使用地图文档页面高度,而非 df_export_height。 (默认值为 480) | Integer |
resolution | 用于定义导出文件分辨率的数字,单位为每英寸点数 (DPI)。 (默认值为 300) | Integer |
image_quality | 用于定义输出图像质量、作为栅格绘制的地图图层的绘制分辨率的字符串。
(默认值为 BEST) | String |
compress_document | 如果设置为 True,则将创建压缩导出。对于 SVG,将对整个文档进行压缩,并将文件扩展名更改为 *.svgz。 (默认值为 False) | Boolean |
picture_symbol | 用于定义是否将图片标记和图片填充转换为输出上的矢量或栅格化对象的字符串。
(默认值为 RASTERIZE_BITMAP) | String |
convert_markers | 用于控制将基于字符的标记符号转换为面的布尔值。如果符号字体不可用或无法嵌入,则可用于正确显示符号。但是,将此参数设置为 True 将禁用所有基于字符的标记符号的字体嵌入,由此会导致其外观发生变化。 (默认值为 False) | Boolean |
embed_fonts | 用于控制导出文件中的字体嵌入的布尔值。当在未安装所需字体的计算机上查看文档时,可通过字体嵌入正确显示文本和字符标记。 (默认值为 False) | Boolean |
代码示例
ExportToSVG 示例 1
此脚本使用所有选项的默认值打开地图文档并将页面布局导出为 SVG 文件。
import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
arcpy.mapping.ExportToSVG(mxd, r"C:\Project\Output\Project.svg")
del mxd
ExportToSVG 示例 2
与从 ArcMap 应用程序的数据视图中导出类似,此脚本将导出单个数据框(而不是整个页面布局)。df_export_width 和 df_export_height 的默认值为 640 和 480。通过传递这些参数的较大值,可以生成具有更高细节的输出图像。
import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
df = arcpy.mapping.ListDataFrames(mxd, "Transportation")[0]
arcpy.mapping.ExportToSVG(mxd, r"C:\Project\Output\ProjectDataFrame.svg", df,
df_export_width=1600,
df_export_height=1200)
del mxd