ArcGIS中标注之——上下标、分数等特殊形式标注 下载本文

ArcGIS中标注之——上下标、分数等特殊形式标注

分数形式标注要素:

首先将分母和分子的内容分别放在两个字段中,然后在标注的时候,标注内容选择用表达式标注,在表达式的输入框中输入\[分子的字段] & \分母的字段],即可实现分数形式的标注。

上下角标形式标注要素:

将标注的主体内容、上角标内容和下角标内容分别用三个字段保存。假设这三个字段分别是:text、super_text和sub_text。

步骤如下:

1.在被标注的图层的属性里,点击“expression(表达式)”。 2.在弹出的“表达式”窗口中书写表达式如下

[text] & \

其中:

\表示将super_text字段里的内容作为上角标 \表示将sub_text字段里的内容作为下角标

补充1:

比如在:对

BlockName

Company

迚行标注时候,使用下面语句实现

BlockName红色显示,而Company黑色显示

\red='255' green='0' blue='0'>\& [BlockName] & \& VbNewLine & [Company]

今天发现了一个小问题,如果

BlockName

或者 Company中有特殊字符

如 &或者>等,会出现将这些特殊字符作为Script语句一部分处理情况,导致无法正常显示标注内容(无法解析

VBScript

语法).这个和网页编程

时候非常类似,于是参考网页编程方法对代码做了一下修改,用\替代\

Function FindLabel ( [BlockName], [Company] ) strBlockName=Replace([BlockName],\strCompany= Replace([Company],\

FindLabel = \red='255' green='0' blue='0'>\& strBlockName & \& VbNewLine & strCompany End Function

补充2:

以前用ArcGIS Label一般也就在图层的Properties里面定义一下Label字体大小和粗细。这两天遇到一个问题,需要在Label中显示多个字段的内容,比如BlockName和CompanyName。其实这个本来不是很难的问题,因为Label中支持VBScript,使用[BlockName] & VbNewLine & [CompanyName]。就可以实现标注中第一行显示BlockName,第二行显示CompanyName.现在问题出来了,出图时候希望突出BlockName效果,希望加粗显示,而CompanyName使用一般字体。考虑了很长时间终于从ArcGIS帮助中找到了相关的内容,原来 Label的VBScript里面支持类似于Html的VBScript标签,比如加粗就是用,上面问题就可以使用下面语句解决:

\

除了加粗,ArcGIS中还支持下面的文本格式标签: Font:

\

Color: \\cyan='100' magenta ='100' yellow='100' black='100'>\& [LABELFIELD] & \Bold:

\Italic:

\Underline:

\All caps:

\Small caps:

\Superscript

\Subscript:

\Character spacing (%):

\