ArcGIS文本标注换行

本文介绍了如何在ArcGIS中通过VBScript表达式实现字段标注的自动换行。步骤包括打开图层属性,设置标注表达式,并编写验证代码。代码利用len()、chr(13)、left()和right()函数根据字段长度进行换行处理。该方法可灵活调整换行次数,适用于长字段标注的整理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

同事用ArcGIS作图,觉得标注字段太长,想让长的标注自动换行,让我帮忙。于是照着ArcGIS的帮助文件写了一个表达式,成功换行。

  1. 打开需要添加标注的图层的属性
    在这里插入图片描述
    2、选择你需要标注的字段,然后点击表达式
    在这里插入图片描述
    3、在弹出的标注表达式窗口中勾选“高级”
    在这里插入图片描述
    4、将以下代码替换上图中红色框中的代码,点击验证,通过验证就说明表达式正确,点确定即可完成操作。如果表达式错误,则会弹出相应的错误提示,按照错误提示修改表达式,直到通过验证。
    在这里插入图片描述
Function FindLabel ([NAME])
  ss=len([NAME])
  if (ss >4) then
   FindLabel = left([NAME],int(ss/2)) & chr(13) & right([NAME],ss-int(ss/2))
  else
  FindLabel = [NAME]
  end if
End Function

给大家简单说明一下这个代码:
ArcGIS表达式里VBScript固定结构就是:

Function FindLabel (字段名)
  表达式
  ······
End Function
  • len([NAME]) : 字段属性的长度 chr(13): 换行符
  • left([NAME],int(ss/2)):int取整,left是取字符串坐标多少个字符,从左边第一个算起
  • right([NAME],ss-int(ss/2)) :right是取右边多少个字符,最右边1个算起。

可以参照这个改成换3行、4行······

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值