ArcGIS中标注之——上下标、分数等特殊形式标注
分数形式标注要素:
首先将分母和分子的内容分别放在两个字段中,然后在标注的时候,标注内容选择用表达式标注,在表达式
的输入框中输入”〈UND〉”&[分子的字段]&”〈/UND〉"&vbNewLine&[分母的字段],即可
实现分数形式的标注。
上下角标形式标注要素:
将标注的主体内容、上角标内容和下角标内容分别用三个字段保存。假设这三个字段分别是:text、
super_text和sub_text。步骤如下:
1.在被标注的图层的属性里,点击“expression(表达式)”。
2。在弹出的“表达式”窗口中书写表达式如下
[text]&"〈sup〉"&[super_text]&""&[sub_text]&"
其中:
""表示将super_text字段里的内容作为上角标
”〈sub〉"&[sub_text]&”
补充1:
比如在:对BlockName和Company进行标注时候,使用下面语句实现BlockName红色显示,而
Company黑色显示
”〈CLRred=’255’green=’0'blue=’0’>"&[BlockName]&”〈/CLR>"&VbNewLine&
[Company]
今天发现了一个小问题,如果BlockName或者Company中有特殊字符如&或者>等,会出现将这些特
殊字符作为Script语句一部分处理情况,导致无法正常显示标注内容(无法解析VBScript语法)。
这个和网页编程时候非常类似,于是参考网页编程方法对代码做了一下修改,用"&”替代”&"
FunctionFindLabel([BlockName],[Company])
strBlockName=Replace([BlockName],”&",”&")
strCompany=Replace([Company],”&”,”&”)
FindLabel=”〈CLRred='255'green='0'blue='0'〉”&strBlockName&""&
VbNewLine&strCompany
EndFunction
补充2:
以前用ArcGISLabel一般也就在图层的Properties里面定义一下Label字体大小和粗细。这两天遇到
一个问题,需要在Label中显示多个字段的内容,比如BlockName和CompanyName.其实这个本来不
是很难的问题,因为Label中支持VBScript,使用[BlockName]&VbNewLine&[CompanyName].
就可以实现标注中第一行显示BlockName,第二行显示CompanyName.
现在问题出来了,出图时候希望突出BlockName效果,希望加粗显示,而CompanyName使用一般字体。
考虑了很长时间终于从ArcGIS帮助中找到了相关的内容,原来Label的VBScript里面支持类似于Html
的VBScript标签,比如加粗就是用
”
除了加粗,ArcGIS中还支持下面的文本格式标签:
Font:
”〈FNTname=’Arial'size=’18’>”&[LABELFIELD]&”〈/FNT〉”
Color:
”〈CLRred='255'green=’255’blue=’255'>"&[LABELFIELD]&”〈/CLR>"
"
Bold:
"
Italic:
”
Underline:
”
Allcaps:
”〈ACP〉"&[LABELFIELD]&”
Smallcaps:
”
Superscript
””&[LABELFIELD]&"”
Subscript:
""
Characterspacing(%):
”〈CHRspacing='25'〉"&[LABELFIELD]&”
Wordspacing(%):
"〈WRDspacing=’150’〉”&[LABELFIELD]&"
Leading(pts):
”
需要注意的是,使用这些标签后,生成的Label语句在Verify按钮中是不生效的,只对最终的显示结果生效
有很多种表达方式,无非就是加下划线,换行之类的,给你说一个:
"〈und〉"&”"&[小班号]&"”&”〈/und>”&vbcrlf&[树种]
本文发布于:2022-12-11 05:30:46,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/88/83750.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |