Class: ThemeLabel

ThemeLabel

标签专题图类。标签专题图是用文本形式在图层上直接显示属性表中的数据。 标签专题图不仅可以帮助用户更好地区分地物要素,同时也显示了要素的某些重要属性,如行政区划、河流、机关、旅游景点的名称、等高线的高程等。

new ThemeLabel(options)

Usage
import { ThemeLabel } from '@supermapgis/iclient-leaflet';

new ThemeLabel(options);
<script type="text/javascript" src="https://iclient.supermap.io/dist/leaflet/iclient-leaflet.js"></script>
<script>
  new L.supermap.ThemeLabel({paramsNames});
  // 弃用的写法
  new SuperMap.ThemeLabel(options);
</script>
common/iServer/ThemeLabel.js, line 14
Name Type Description
options Object

参数。

Name Type Default Description
items Array.<ThemeLabelItem>

子项数组。

labelExpression string

标注字段表达式。

matrixCells Array.<(LabelImageCell|LabelSymbolCell|LabelThemeCell)>

矩阵标签元素数组。

alongLine ThemeLabelAlongLine 可选

标签沿线标注方向样式类。

background ThemeLabelBackground 可选

标签的背景风格类。

labelOverLengthMode LabelOverLengthMode LabelOverLengthMode.NONE 可选

超长标签的处理模式枚举类。

maxLabelLength number 256 可选

标签在每一行显示的最大长度。

numericPrecision number 0 可选

数字显示精度。如果显示的标签内容为数字,通过该字段设置其显示的精度。

offset ThemeOffset 可选

指定标签专题图中标记文本相对于要素内点的偏移量对象。

overlapAvoided boolean true 可选

是否允许以文本避让方式显示文本。

rangeExpression string 可选

制作分段标签专题的分段字段或字段表达式。

smallGeometryLabeled boolean false 可选

是否显示长度大于被标注对象本身长度的标签。

text ThemeLabelText

标签中文本风格。

textSpace number 0 可选

沿线标注,相邻两个文字之间的间距,单位:当前设置的字高。

memoryData ThemeMemoryData 可选

专题图内存数据。

API Relations

Returned by: ThemeLabel.fromObj.

Extends

ThemeLabel -> CommonTheme

Members

标签沿线标注方向样式类。 在该类中可以设置标签是否沿线标注以及沿线标注的多种方式。沿线标注属性只适用于线数据集专题图。

标签专题图中标签的背景风格类。通过该字段可以设置标签的背景形状和风格。

itemsArray.<ThemeLabelItem>

分段标签专题图的子项数组。分段标签专题图使用 rangeExpression 指定数字型的字段作为分段数据,items 中的每个子对象的 [start,end) 分段值必须来源于属性 rangeExpression 的字段值。每个子项拥有自己的风格。

labelExpressionstring

标注字段表达式。系统将 labelExpression 对应的字段或字段表达式的值以标签的形式显示在图层中。

labelOverLengthModeLabelOverLengthMode

对于标签的长度超过设置的标签最大长度 maxLabelLength 时称为超长标签。

Default Value:
LabelOverLengthMode.NONE

矩阵标签元素数组,用于制作矩阵标签专题图。 数组中可以放置符号类型的矩阵标签元素和图片类型的矩阵标签元素。

maxLabelLengthnumber

标签在每一行显示的最大长度,一个中文为两个字符。 如果超过最大长度,可以采用两种方式来处理,一种是换行的模式进行显示,另一种是以省略号方式显示。单位为字符。

Default Value:
256

memoryDataThemeMemoryData

专题图内存数据。
用内存数据制作专题图的方式与表达式制作专题图的方式互斥,前者优先级较高。 第一个参数代表专题值,即数据集中用来做专题图的字段或表达式的值;第二个参数代表外部值。在制作专题图时,会用外部值代替专题值来制作相应的专题图。

numericPrecisionnumber

如果显示的标签内容为数字,通过该字段设置其显示的精度。例如标签对应的数字是 8071.64529347, 如果该属性为 0 时,显示 8071;为 1 时,显示 8071.6;为 3 时,则是 8071.645。

offsetThemeOffset

用于设置标签专题图中标记文本相对于要素内点的偏移量对象。

overlapAvoidedboolean

是否允许以文本避让方式显示文本。true 表示自动避免文本叠盖。只针对该标签专题图层中的文本数据。 在标签重叠度很大的情况下,即使使用自动避让功能,可能也无法完全避免标签重叠现象。

Default Value:
true

rangeExpressionstring

制作分段标签专题的分段字段或字段表达式。该表达式对应的字段(或者字段表达式)的值应该为数值型。 该字段与 items 分段子项联合使用,每个子项的起始值 [start,end) 来源于 rangeExpression 字段值。 最后 labelExpression 指定的标签字段(标签专题图要显示的具体内容)会根据分段子项的风格进行分段显示。

smallGeometryLabeledboolean

是否显示长度大于被标注对象本身长度的标签。在标签的长度大于线或者面对象本身的长度时, 如果该值为 true,则标签文字会叠加在一起显示,为了清楚完整的显示该标签, 可以采用换行模式来显示标签,但必须保证每行的长度小于对象本身的长度。

标签中文本风格。

textSpacenumber

沿线标注,相邻两个文字之间的间距,单位:当前设置的字高。

typestring

专题图类型。

uniqueExpressionstring

用于制作单值专题图的字段或字段表达式。 该字段值的数据类型可以为数值型或字符型。如果设置字段表达式,只能是相同数据类型字段间的运算。必须与 labelExpression 一起使用。

uniqueItemsArray.<ThemeLabelUniqueItem>

单值标签专题图子项数组。单值标签专题图使用 uniqueExpression 单值标签专题图子项集合。

Methods

static fromObj(obj){ThemeLabel}

common/iServer/ThemeLabel.js, line 263

从传入对象获取标签专题图类。

Name Type Description
obj Object

传入对象。

Returns:
Type Description
ThemeLabel ThemeLabel 对象。

inherited destroy()

common/iServer/ThemeLabel.js, line 159

释放资源,将引用资源的属性置空。

toJSON(){string}

common/iServer/ThemeLabel.js, line 204

将 themeLabel 对象转化为 JSON 字符串。

Returns:
Type Description
string 返回转换后的 JSON 字符串。

toServerJSONObject(){Object}

common/iServer/ThemeLabel.js, line 213

转换成对应的 JSON 格式对象。

Returns:
Type Description
Object 对应的 JSON 格式对象。