用vbscript实现ArcMap中的上下标标注功能

其他7年前 (2019-06-25)3285

1.问题描述:

如果要出一幅地质图,一般地层的表示通常要上下标方式,比如A14(其中1为上标,4为下标),我把A14存入对应矢量要素的属性字段中,可是利用该字段标注要素时总是得不到想要的上下标。

2.解决方法:

下面的“Function FindLabel”是ArcMap标注的公式例子,在图层Label选项卡中。使用之前应该将“Advanced”钩选上,并将“SHAPE_Length”改为您自己的列名,再将其中的 "上标测试"和“下标”字样改成您的上下标即可。

Function FindLabel ( [Symbol] )
  Dim lLen
  lLen=Len( [Symbol] )
  Dim i
  Dim sStr
  sStr=""
  i=0
  Do While i
    sStr=sStr & " "
    i=i+1
  Loop
  FindLabel = [Symbol]  & "" & "上标测试"  & vbcrlf & sStr & "下标" & ""
End Function

3.几点补充说明

  上述代码只是解决了上下标的问题,因为我把上下标A14全存在一个字段里了,所以还有一个字符串提取的问题,就是说把1提出来变成上标,把4提出来用下标。可以用vb脚本的split函数。我把A14存成“A/1/4” 然后用split("A/1/4","/")即可提出这三个字符。

  如果有些只有下标。而有些只有上标则要对第二步的代码加以完善,不同情况用不同的方法。 


相关文章

在ArcGIS 10.3标注中竖排文字

在ArcGIS 10.3标注中竖排文字

ArcGIS 10.3中文字默认“从左至右”排列,而实际的标注比如“XX路、XX街”有些文字是竖直排列的。接着就涉及到“标注样式”的问题。如果是整体竖排,点击图层的Properties...(属性),...

ArcGIS地图通用线符号的制作

ArcGIS地图通用线符号的制作

ArcGIS地图中有一些线性数据,如交通网络,应用的领域非常广泛,其符号表达已逐渐被大众所认识和熟知。这类线符号的制作,虽没达到约定俗成的程度,但已具有一定的通用性,值得制图员去学习和掌握。所以本文将...

SuperMap iDesktop 自动化制图

SuperMap iDesktop 自动化制图

传统的地图制图有许多弱点,生产难度大、成本高、周期长、不能反映空间地理事物的动态变化、信息难以共享等。因此,自动化制图技术应运而生。地图制图的自动化可以大大提高制图的效率和规范性。SuperMap i...

ArcGIS地图配准

ArcGIS地图配准

运用ArcGIS软件对地图进行配准!    1 数据准备:网络下载的中国地图,最好是带有经纬网格的地图(有经纬度坐标,方便配准时添加控制点)  2 加载数据:打开arcgis软件,加载数据,会出现提示...

经纬度Excel数据在ArcGIS中转化成平面坐标数据

经纬度Excel数据在ArcGIS中转化成平面坐标数据

经度是指某点与两极的连线与0度经线所在平面的夹角,国际上规定以通过英国伦敦近郊的格林尼治天文台旧址的经线作为计算经度的起点,即经度零度零分零秒,也称“本初子午线”。它东面的为东经,记为E,共180度,...

如何在国产化环境下用MapGIS Desktop(九州)制作专题地图

如何在国产化环境下用MapGIS Desktop(九州)制作专题地图

地图,既是人类认识自然、对环境空间认知的结果,又是人类认识自然、改造自然,从事各种社会活动的有力工具。无论GIS发展如何日新月异,作为地理学第二语言的地图仍是GIS最重要的表现形式,善于制图是一名GI...