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

map2shp4年前 (2019-06-25)技术文章1299

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实用制图技巧——如何制作“光照”效果的水体多边形

ArcGIS实用制图技巧——如何制作“光照”效果的水体多边形

通过对地图中的水体要素添加光照效果,能够使地图更具真实感。这里,就来介绍一下如何使用ArcMap来实现为水体表面添加光照效果。         &nb...

ArcGIS使用字体文件制作符号库

ArcGIS使用字体文件制作符号库

ArcGIS制作的符号库有多种,刚刚毕业进入公司,接触到符号库的制作,在前人的脚步之下,本人整理通过字体符号(Character Marker Symbol)制作符号库的步骤。重要方法:对于大量制造符...

如何实现ArcGIS符号库的合并以及延伸问题

如何实现ArcGIS符号库的合并以及延伸问题

如何实现ArcGIS符号库的合并?有时候我们会需要将一个符号库中的部分符号添加到另一个符号库中,有时候则是两个或多个符号库整体合并到一起,如何操作可以实现呢?这里提供两个解决思路一)在ArcMap的符...

ArcGIS地图通用线符号的制作

ArcGIS地图通用线符号的制作

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

ArcGIS地质填充符号的制作

ArcGIS地质填充符号的制作

地质制图中,面符号的制作复杂度最高,存在规则和不规则的样式,通常由底色和图案组成,表示岩性和年代,是极具代表性的符号种类。ArcGIS提供了3种实现地质面符号的方法:基于矢量、基于图片和基于制图表达技...