动态文本是指布局中随工程、地图框和地图等的当前属性变化而变化的文本。
和一般文本的最大区别是,动态文本的内容中是包括某些属性的,像工程路径、地图名等。
当插入一段动态文本时,会自动显示属性的当前值。
当更新属性时,动态文本也将自动更新。
打开一个布局中,在
【插入】
选项卡下,可以找到
【动态文本】
标签,里面已经预置了很多动态文本。
其实大部分情况下,我们只需要在这里就能找到需要的动态文本:
试一下,选择
【动态文本】
下的
【名称】
,然后在布局中框选:
就会在布局中插入一个文本,文本内容为【名称:地图框】。
右键点击,查看属性,可以看到值为一个名为【name】的文本块:
点击右侧的
【文本视图】
,可以看到内容变成了一串有点像
HTML的代码
:
既然是
HTML代码,这里自然是可以通过代码改动文本结果的。
试一下,把前面的【名称:】去掉,后面加个【(A3)】:
type="mapFrame" name="地图框" property="name"/>(A3)
查看生成结果:
看到这里,写过
HTML的估计就跃跃欲试了。
预置的动态文本分为【工程、布局、地图框、表属性、表统计数据】等。
其中
【工程、布局、地图框】
的属性比较好理解,看个预览基本也能明白个七七八八,可以自行体验:
【表属性、表统计数据
】则稍
有点复杂。
【表属性】
顾名思义,这个动态文本会获取图层或独立表的属性表内容,并根据筛选条件,进一步获取符合条件的字段值。
点开【值】:
会弹出一个对话框,用于设置动态文本的值:
以上图为例,地图框选择当前,表格选择图层【现状用地_Select】,查询选择
【自定义查询】
。
(查询方法还有所有行和可见行,自行尝试。)
查询语句设置为OBJECTID小于5。
到这里系统将会帮你找出符合条件的所有行。
【外观】
设置则是决定你想在文本中表达这些行的哪部分内容。
可以直接选择字段,也可以点击右边的按键,写更复杂的表达表。
这里就以最简单的字段为例,选择【DLMC】字段。
因为我们选择的是多行,所以结果应该有多个字段值,分隔符的作用是在这些值的中间插入字符,这里就输入【\n】,即换行符。
点击【确定】,插入文本如下:
显示的是多行【DLMC】值。
【表统计数据】
也是字面意思,就是对表格进行统计,然后实时呈现统计结果。
以上图为例,地图框和表格还是原来的选择。
查询设置为
【可见行】
,即只会统计当前布局框内的所有图斑。
【外观】中,统计数据的类型设置为
【总和】
。
字段选择一个双精度字段,如【TBMJ】。
其它随意,点击确定,生成文本如下:
这时候,我们再激活布局,将布局里的要素移动或缩放一下,改变布局框内的显示范围,动态文本的内容也随之变化:
这就是动态文本的关键作用,比如有多个村的三调用地,通过视图的变化,可以实时统计每个村的面积。
还有其它统计方式,如
【行数、最大值、平均值】
等,可自行尝试。
上面示例的动态文本都是在一般的布局文件上进行的。
ArcGIS Pro里还有一种特殊的布局,叫
地图系列
。在地图系列中,动态文本多了一些其它属性。
这里以用村级行政区作为索引图层给三调图斑做一个地图系列:
生成的地图系列如下:
点击插入动态文本,可以看到,多出了一些地图册的内容。
包括
【页面名称、页码、属性】
等。
这里比较重要的是
【
属性
】
,点击弹出对话框,可以看到这里可以设置
索引图层
的所有字段值。
这里可玩的东西就比较多了,可以自己试试。
除了上面Pro提供的预置文本,我们还可以更灵活的对文本进行编辑。
1、动态文本和静态文本的结
合
先插入一个【名称】文本:
可以看到,除了动态值外,前面还加了
【名称:】
的文字,这部分就是静态文本。
查看属性,可以在文本框中随意添加静态文本,如下图:
2、特殊符号的使用
动态文本中同样支持特殊符号,如换行符【\n】:
3、多个动态文本内容的组合使用
多个动态文本内容可以一起使用。
一般情况下也不用手输,插入两个动态文本,把基本一个的文本内容复制过来就行了。
4、默认文本的使用
有时候某些动态值可能会是空值,如下,制作者名单没有填写,生成的文本就是空的:
我们可以加一个默认文本:
修改代码,显示结果如下:
5、文本的格式化设置
动态文本同样支持格式化标签,如
【字体大小、颜色、粗体、字间距】
等。
代码比一般的标注简练,不用加号和引号了。
比如,改个颜色:
加个下划线: