我想使用arcpy访问注释层(目的是验证文本注释中的几个文本字符串)。注释指的是绘图工具注释,而不是动态标签。这些注释层位于名为“ Default”的组层下。
在ESRI的文件平局注释的会谈为层本身:
地图文档中基本上有三类图层:要素图层,组图层和栅格图层。使用isFeatureLayer,isGroupLayer和isRasterLayer属性可以识别或隔离大多数图层类型,但不能识别或隔离所有图层类型。有一些特殊的图层和数据集不属于以下三类之一:注释子类,尺寸特征,网络数据集,terrain数据集,拓扑数据集等。在这些情况下,您可能需要先测试其他属性以隔离感兴趣的层,然后再对其进行处理。
要注意的一件事是ArcGIS如何处理绘图注释,可能有两种平均配置:
ArcGIS完全支持两种类型的注释:地理数据库和地图文档
就我而言,它是地图文档。
根据所有这些文档,看起来绘制注释仅仅是层,因此像这样的简单代码应该可以工作:
mxd = arcpy.mapping.MapDocument("some\mxdpath\here")
df = arcpy.mapping.ListDataFrames(mxd,"Layers")
lyr = arcpy.mapping.ListLayers(mxd,"current_annotation_layer",df)
但是问题是注释似乎无法通过数据框获得(考虑到我的每个注释层都与要素层相关联,这很奇怪)。
是否有任何特定的arcpy类可以访问注释(一个类似于ArcObject SDK的IAnnotationFeature2的类)?任何解决方法?
谢谢 !