打印和导出包含服务图层的地图

您可以打印和导出包含服务图层的地图。但应该切记:在使用提供基于图像的服务的服务器时存在一定的限制。大多数服务器会通过对它们所创建的所有输出图像指定大小限制来最大限度地提供性能和可用性。该大小限制由各服务器设定,并能根据服务的不同而有所变化。由于服务主要用于在计算机显示器上进行显示,因此由服务器设置的大小限制将很可能与在常用显示器上显示的图像大小相同,屏幕分辨率通常为 96 点每英寸 (dpi)。此外,大多数已缓存的 Web 地图服务(如那些在 ArcGIS online 上可用的 Web 地图服务)也会针对在屏幕 (96 dpi) 上的查看而进行设计。

有一点需要特别注意,即打印或导出包含图像服务的地图时,您所处理的是栅格。输出图像质量 (OIQ) 将影响服务中所有要素的绘制,包括线和文本。为了获得最佳质量,您可能需要使用“最佳 OIQ”(重采样比率为 1 比 1)。但这需要花费一定的成本 - dpi 的增加将导致请求服务器创建更大的图像,当服务器无法提供具有如此高分辨率的图像时,这种请求可能会产生问题。

有关查看图像服务与打印图像服务之间对比的示例

您已经向 5 英寸 x 5 英寸的数据框添加了基于图像的服务,并且计算机显示器的分辨率为 96 dpi。在 dpi 为 96 时,5 英寸相当于 480 个像素 (5 x 96 = 480)。要在该 dpi 下获得适合此数据框的图像,ArcMap 会请求服务器创建 480 x 480 个像素(或者总像素为 230400)的图像。

在布局中的 5 英寸 x 5 英寸数据框内的图像服务

具有此大小的图像应该不会超出服务器的限制。您可以检查从服务器端接收到的图像大小,方法是使用“Windows 资源管理器”或者图像查看应用程序查看图像的属性。图像文件应该位于由当前用户的 TMP 环境变量指定的目录中(如 C:\Documents and Settings\<当前用户>\Local Settings\Temp)。如果不存在 TMP 变量,则将使用 TEMP 变量的目录。如果使用的是“Windows 资源管理器”,则只需按照修改的日期排列文件即可找到图像(图像文件的名称对您没有任何意义),找到之后右键单击该图像文件,然后单击属性。文件大小在摘要选项卡中列出。

用于填充 5 英寸 x 5 英寸数据框的图像的属性(在 Windows 资源管理器中)

您会看到图像的宽度和高度为 480 x 480 个像素,这正好是 ArcMap 请求的尺寸。将使用该图像在您的计算机显示器上显示布局视图内的服务。实际上,这不是用于打印地图的图像。由于请求的图像的参数有可能会根据打印或导出设置而进行更改,因此在实际打印或导出地图时,会发出不同的图像请求。

但现在您希望打印包含图像服务图层的同一地图,并且需要将此地图发送至具有 600 dpi 的打印机。如果将 OIQ 设置为“最佳”,则 ArcMap 会设置 600 dpi,并请求服务器创建高度和宽度均为 3000 个像素(5 英寸 x 600 像素)的图像 - 总共为 900 万像素。您可以看到在向服务器请求用于在屏幕上显示的图像和用于打印的图像之间的差异。虽然在这两种情况下,图像的尺寸都是 5 英寸 x 5 英寸,但用于打印的图像所需像素数目明显要更大一些。

输出用途示例

dpi 示例

以英寸为单位的高度和宽度

以像素(dpi x 英寸)为单位的高度和宽度

请求的总像素

在屏幕上显示

96

5 x 5

480 x 480

230,400

打印

600

5 x 5

3000 x 3000

9,000,000

用于在屏幕上查看和用于打印的图像大小差异

如果请求的图像文件大小超出了服务器设置的限制(因为有可能会有这样的请求),则根据服务类型的不同,图层将被拉伸,或者根本不对图层进行绘制。有关打印不同类型的服务图层的详细信息,请参阅下一节。

注注:

已缓存的 Web 地图图层的图像具有由服务管理员事先设置的大小和 dpi。更改数据框的大小不会影响在绘制图层时所需的切片图像。打印或导出的缓存 Web 地图图层的质量可根据打印或导出时试图采用的分辨率的不同而有所变化。请记住,这些服务主要用于在屏幕上进行显示。有关详细信息,请参阅使用缓存 Web 地图图层

ArcGIS Server 地图服务图层

当在屏幕上查看地图时,例如在“数据”视图、“布局”视图或者“打印预览”中,dpi 表示您计算机显示器的分辨率。当发送地图以供打印时,请求中的 dpi 将是打印机的 dpi;或者,如果您正在导出地图,则请求中的 dpi 将是您为输出文件设置的 dpi。因此,在打印或导出包含图像服务的地图时,ArcMap 会向服务器发出新的请求。请求中的 dpi 值将会根据 ArcMap 中设置的输出图像质量值进行调整。

高度和宽度使用以像素为单位的所请求的图像尺寸,并且地图服务具有大小限制。与 ArcIMS 影像服务和 ArcMap Server 服务类似,如果 ArcMap 请求的大小超出限制,则服务器将发送它所能创建的最大图像。然后 ArcMap 将拉伸此图像以使其适合数据框。因此,当图像拉伸时,图像的质量会下降;ArcMap 对图像拉伸的程度越大,图像质量就会越差。

对于普通的 ArcGIS 地图服务,您应该能够打印出效果不错的信纸大小的地图。除非服务器允许使用更大的图像大小,否则试图创建更大尺寸的打印将会显著影响质量。大小限制不能由客户端 (ArcMap) 更改;它只能由 ArcGIS Server 管理员进行更改。

ArcGIS Server 地图服务图层完全支持图例。在使用 ArcGIS Server 地图服务图例项时,单个符号和文本标注的图像会存储在客户端计算机的内存中。如果地图服务中包含了多个图例项,则存在一定的风险:计算机可能会耗尽显示图例时所需的资源。因此,默认情况下,如果子图层包含的图例项超过 100 个,则 ArcMap 将不会显示其中的图例。

了解有关使用 ArcGIS Server 地图服务图层的详细信息。

ArcIMS 服务图层

ArcIMS 要素服务

由于 ArcIMS 要素服务不基于图像,因此这些服务不存在类似的限制。不过要记住,服务的要素通过网络发送,因此根据流式传输的要素数的不同,性能可能会有所下降。

ArcIMS 影像服务和 ArcMap 服务

ArcIMS 服务的 ArcMap 图像请求(<GET_IMAGE> 请求)包括四个参数:dpi、高度、宽度和 autosize(自动调整大小)。

当在屏幕上查看地图时,例如在“数据”视图、“布局”视图或者“打印预览”中,dpi 表示您计算机显示器的分辨率。当发送地图以供打印时,请求中的 dpi 将是打印机的 dpi;或者,如果您正在导出地图,则请求中的 dpi 将是您为输出文件设置的 dpi。因此,在打印或导出包含图像服务的地图时,ArcMap 会向服务器发出新的请求。请求中的 dpi 值将会根据 ArcMap 中设置的输出图像质量值进行调整。

高度和宽度是指以像素为单位的所请求的图像尺寸。当 autosize 属性被设置为 True(ArcMap 会自动执行此操作)时,如果请求的大小比设置的限制大,则 ArcIMS 服务器将发送它能创建的最大图像。例如,如果在填充页面布局中的数据框时所需的图像大小比服务器允许的大小大,则 ArcMap 会从服务器获取它所能得到的最大图像,然后将该图像拉伸以使其适合数据框。因此,当图像拉伸时,图像的质量会下降;ArcMap 对图像拉伸的程度越大,图像质量就会越差。对于普通的 ArcIMS 服务,您应该能够打印出效果不错的信纸大小的地图。除非服务器允许使用更大的图像大小,否则试图创建更大尺寸的打印将会显著影响质量。

对于大多数 ArcIMS 服务,4 MB - 或者 1024 x 1024 个像素(总共 1,048,576 个像素)是图像输出的大小限制。此大小限制由服务器管理员设置,可以小于或大于 4 MB。客户端 (ArcMap) 无法更改此大小限制。

打印 ArcIMS 影像服务和 ArcMap 服务的示例

介绍部分中的地图被发送至 dpi 设置为 600 且输出图像质量最佳的打印机。ArcMap 请求大小为 900 万像素的图像,但请求的图像大小(3000 x 3000 个像素)远超出了服务器允许的限制(1024 x 1024 个像素)。

ArcIMS 服务器发送它所能创建的最大图像,因此在 600 dpi 时,将允许大小为 1.71 英寸 x 1.71 英寸的图像。要在打印布局中填充 5 英寸 x 5 英寸的数据框,则需要对该图像进行拉伸。您应该能够在信纸大小的纸上打印地图。

但现在您将布局页面大小更改为 ANSI E(44 英寸 x 34 英寸),并根据更改后的页面大小按比例缩放地图元素。然后,对地图比例进行适当更改,以使此比例与先前地图保持一致,因此现在页面布局上的数据框大小大致为 27 英寸 x 27 英寸。通过在屏幕上查看完整布局,可以看到图像的质量相当不错。

大型的、ANSI 大小的布局中的图像服务

但如果在布局 工具条上单击缩放至 100% 按钮 缩放至 100%,就会看到图像在打印时的实际显示效果。正如本示例中所示,您可能会发现显示画面的质量很差,不适合打印。

在包含图像服务的大型的、ANSI 大小的布局上进行放大

服务器允许的最大大小不能够充分满足打印地图中的数据框大小的要求。只有两个方法可以修复此缺陷:减小打印地图的大小,或者增加服务输出的大小限制。要增加此限制,您必须具有服务器管理权限。

在 ArcIMS 图层中支持的图例

根据服务的不同,您可能会注意到在创建图例时会产生一些异常结果。例如,有些 ArcIMS 影像服务子图层的图例项是重复的。如下所示:

在图例中具有重复条目的 ArcIMS 影像服务

这是因为 ArcIMS 允许在单个图层内执行的按比例渲染。但 ArcMap 不支持按比例渲染。由于渲染会根据比例范围的不同而有所变化,因此 ArcMap 将显示所有的 ArcIMS 渲染组。

这不会影响地图中子图层要素的显示。仅影响内容列表和图例。您可能需要手动编辑图例。

了解有关使用 ArcIMS 服务图层的详细信息。

WMS 服务图层

网络地图服务 (WMS) 服务器可能会(也可能不会)规定输出图像的大小限制。如果 ArcMap 知道此大小限制,则通过打印或导出的方式在 WMS 图层中获得的结果与其他影像服务图层类似,如 ArcIMS 影像服务图层。当 ArcMap 需要的图像大小比限制值大时,ArcMap 将获得 WMS 服务器所允许的最大图像,然后将该图像进行拉伸以使其适合数据框。这会导致输出质量发生变化。

如果 WMS 服务器没有规定输出图像的大小限制,则 ArcMap 无法确定 WMS 服务器的大小限制,因此 ArcMap 无法选择最大的大小。此外,ArcMap 也不能选择任意大小,因为图像可能没有必要进行拉伸,拉伸后对质量会产生不利影响。某些 WMS 服务器会在错误消息中报告大小限制,而其他 WMS 服务器可能不会。您需要对大小进行试验,方可找到能用于打印或导出的最大大小。

例如,在先前示例中对 900 万像素图像的请求可能超出了服务器的图像大小限制。但如果您将 OIQ 更改为“快速”(重采样比率为 1:5),则 ArcMap 将请求较小的图像。如果图像大小在 WMS 服务器的限制范围内,则将绘制图层。

在 WMS 图层中支持的图例

根据开放地理空间联盟 (OGC) 的 WMS 规范,可以选择是否支持图例。当服务器不支持图例时,您将不会看见在图例向导中列出的 WMS 服务图层,也不会在这些图层的内容列表中看见任何图例项。WMS 图例属于复合图像,其中包含 WMS 子图层的所有符号系统和文本标注,知道这一点很重要。这与 ArcIMS 服务子图层的图例或者 ArcGIS Server 地图服务子图层的图例不同,在后两者中,图例的每个部分(每个单独符号和每个文本标注)均被发送至 ArcMap,并且由 ArcMap 分别处理。因此,WMS 图例图像的大小可以比 ArcIMS 图像服务或者 ArcGIS Server 地图服务图例图像的大小大许多。

如果 WMS 服务器支持图例,则可能需要根据由 WMS 服务器创建的可用图例项的大小来试验多种操作。如果大小相对较小,则应该会在 ArcMap 内容列表中看见图例,并且在向页面布局中插入一个图例时,您应该会看见在“图例向导”中列出的 WMS 子图层。如您在内容列表中没有看见图例项,或者没有看见图例向导 中列出的子图层,则可能是因为图例图像的大小过大。此时,您可以在 WMS 子图层属性 对话框的样式选项卡上查看图例。如果希望在页面布局中显示图例,则可使用子图层快捷菜单命令将 WMS 图例添加至地图。该命令会将图例作为图形添加到地图中。请注意,在任何时候,您都只能添加单个的 WMS 子图层图例。

有关 OGC WMS 规范的详细信息,请参阅 OGC 网站,网址为 www.opengeospatial.org/standards

了解有关使用 WMS 服务图层的详细信息。

相关主题


7/10/2012