Chinaunix首页 | 论坛 | 博客
  • 博客访问: 721334
  • 博文数量: 33
  • 博客积分: 10012
  • 博客等级: 上将
  • 技术积分: 1365
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-15 09:11
文章分类
文章存档

2009年(10)

2008年(23)

我的朋友

分类: 项目管理

2008-10-21 11:58:07

分数形式标注要素:
首先将分母和分子的内容分别放在两个字段中,然后在标注的时候,标注内容选择用表达式标注,在表达式的输入框中输 入"" & [分子的字段] & "" & vbNewLine & [分母的字段],即可实现分数形式的标注。
上下角标形式标注要素:
将标注的主体内容、上角标内容和下角标内容分别用三个字段保存。假设这三个字段分别是:text、super_text和sub_text。步骤如下:
1.在被标注的图层的属性里,点击“experssion(表达式)”。
2.在弹出的“表达式”窗口中书写表达式如下
[text] & "" & [super_text] & "" & "" & [sub_text] & ""
其中:
"" & [super_text] & ""表示将super_text字段里的内容作为上角标
"" & [sub_text] & ""表示将sub_text字段里的内容作为下角标
补充:
比如在:对BlockName和Company进行标注时候,使用下面语句实现BlockName红色显示,而Company黑色显示
"" & [BlockName] & "" & VbNewLine & [Company]
今天发现了一个小问题,如果BlockName或者 Company中有特殊字符如 &或者>等,会出现将这些特殊字符作为Script语句一部分处理情况,导致无法正常显示标注内容(无法解析VBScript语法).
这个和网页编程时候非常类似,于是参考网页编程方法对代码做了一下修改,用"&"替代"&"
Function FindLabel ( [BlockName], [Company] )
strBlockName = Replace([BlockName],"&","&")
strCompany= Replace([Company],"&","&")
FindLabel = "" & 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标签,比如加粗就是用,上面问题就可以使用下面语句解决:
"" & [BlockName] & "" & VbNewLine & [CompanyName]
除了加粗,ArcGIS中还支持下面的文本格式标签:
Font:
"" & [LABELFIELD] & ""

Color:
"" & [LABELFIELD] & ""
"" & [LABELFIELD] & ""

Bold:
"" & [LABELFIELD] & ""

Italic:
"" & [LABELFIELD] & ""

Underline:
"" & [LABELFIELD] & ""

All caps:
"" & [LABELFIELD] & ""

Small caps:
"" & [LABELFIELD] & ""

Superscript
"" & [LABELFIELD] & ""

Subscript:
"" & [LABELFIELD] & ""

Character spacing (%):
"" & [LABELFIELD] & ""

Word spacing (%):
"" & [LABELFIELD] & ""

Leading (pts):
"" & [LABELFIELD] & "需要注意的是,使用这些标签后,生成的Label语句在Verify按钮中是不生效的,只对最终的显示结果生效
阅读(8127) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~