---
title: Class: Text
source: https://vjmap.com/en/doc/Class_Text.html
---

# Class: Text

创建文本组件.

**`param`**

**`param`** 文字内容

**`param`** 文字样式

**`param`** 用作文本的 DOM 元素。

**`param`** 一个字符串，指示应该放置在最靠近坐标的标记部分。选项有“center”、“top”、“bottom”、“left”、“right”、“top-left”、“top-right”、“top-right” “左下”和“右下”.

**`param`** 作为要应用的对象相对于元素中心的偏移量（以像素为单位）。负数表示向左和向上.

**`param`** 如果未提供`options.element`.

**`param`** 如果未提供`options.element`，则用于默认文本的比例。.

**`param`** 一个布尔值，指示是否可以将文本拖动到地图上的新位置.

**`param`** 用户在单击文本期间可以移动鼠标指针以将其视为有效单击（与文本拖动相反）的最大像素数。默认是继承地图的`clickTolerance`.

**`param`** 文本相对于其各自的“rotationAlignment”设置的旋转角度（以度为单位）。正值将顺时针旋转文本.

**`param`** `map` 将 `Text` 与地图平面对齐。 `viewport` 将 `Text` 与视口平面对齐。 `auto` 自动匹配 `rotationAlignment` 的值.

**`param`** `map` 对齐 `Text` 相对于地图的旋转，在地图旋转时保持方位。 `viewport` 对齐 `Text` 相对于视口的旋转，与地图旋转无关。 `auto` 等价于 `viewport`.

**`example`**
// Create a new Text.
const text = new vjmap.Text({text: "abc“})
    .setLngLat([30.5, 50.5])
    .addTo(map);

**`example`**
// Set text options.
const text = new vjmap.Text({
    text: "abc“,
    draggable: true
}).setLngLat([30.5, 50.5])
    .addTo(map);

### Hierarchy

- *Evented*

  ↳ **Text**

### Table of contents

#### Constructors

- [constructor](#constructor)

#### Properties

- [\_style](#_style)
- [\_textContainerDom](#_textcontainerdom)

#### Methods

- [addTo](#addto)
- [getElement](#getelement)
- [getLngLat](#getlnglat)
- [getMarker](#getmarker)
- [getOffset](#getoffset)
- [getPitchAlignment](#getpitchalignment)
- [getPopup](#getpopup)
- [getRotation](#getrotation)
- [getRotationAlignment](#getrotationalignment)
- [getStyle](#getstyle)
- [getText](#gettext)
- [hide](#hide)
- [isDraggable](#isdraggable)
- [remove](#remove)
- [setAnimation](#setanimation)
- [setCursor](#setcursor)
- [setDraggable](#setdraggable)
- [setLngLat](#setlnglat)
- [setOffset](#setoffset)
- [setPitchAlignment](#setpitchalignment)
- [setPopup](#setpopup)
- [setRotation](#setrotation)
- [setRotationAlignment](#setrotationalignment)
- [setStyle](#setstyle)
- [setText](#settext)
- [show](#show)
- [togglePopup](#togglepopup)

### Constructors

#### constructor

\+ **new Text**(`options?`: [*TextOptions*](#interfacesdefaulttextoptionsmd)): [*Text*](#classesdefaulttextmd)

构造函数

##### Parameters

| Name | Type |
| :------ | :------ |
| `options?` | [*TextOptions*](#interfacesdefaulttextoptionsmd) |

**Returns:** [*Text*](#classesdefaulttextmd)

Overrides: Evented.constructor

### Properties

#### \_style

• **\_style**: *object*

___

#### \_textContainerDom

• **\_textContainerDom**: HTMLElement

### Methods

#### addTo

▸ **addTo**(`map`: *Map*): [*Text*](#classesdefaulttextmd)

将 `Text` 附加到 `Map` 对象。

**`example`**
const text = new vjmap.Text({text: "abc"})
    .setLngLat([30.5, 50.5])
    .addTo(map); // add the text to the map

##### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `map` | *Map* | to add the text to. |

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.

___

#### getElement

▸ **getElement**(): HTMLElement

返回 `Text` 的 HTML 元素。

**`example`**
const element = text.getElement();

**Returns:** HTMLElement

Returns the text element.

___

#### getLngLat

▸ **getLngLat**(): LngLatLike

得到经纬度

**Returns:** LngLatLike

___

#### getMarker

▸ **getMarker**(): *Marker*

返回 `Text` 的 Marker 对象。

**Returns:** *Marker*

___

#### getOffset

▸ **getOffset**(): *number*

获取文本的偏移量.

**Returns:** *number*

The text's screen coordinates in pixels.

___

#### getPitchAlignment

▸ **getPitchAlignment**(): *string*

返回文本的当前 `pitchAlignment` 属性.

**Returns:** *string*

The current pitch alignment of the text in degrees.

___

#### getPopup

▸ **getPopup**(): *Popup*

返回绑定到 `Text` 的 `Popup` 实例。

**Returns:** *Popup*

Returns the popup.

___

#### getRotation

▸ **getRotation**(): *number*

返回文本的当前旋转角度（以度为单位）.

**Returns:** *number*

The current rotation angle of the text.

___

#### getRotationAlignment

▸ **getRotationAlignment**(): *string*

返回文本的当前 `rotationAlignment` 属性.

**Returns:** *string*

The current rotational alignment of the text.

___

#### getStyle

▸ **getStyle**(): *object*

得到文本样式

**Returns:** *object*

___

#### getText

▸ **getText**(): *string*

得到文本内容

**Returns:** *string*

___

#### hide

▸ **hide**(): *void*

隐藏

**Returns:** *void*

___

#### isDraggable

▸ **isDraggable**(): *boolean*

如果可以拖动文本，则返回 true。

**Returns:** *boolean*

True if the text is draggable.

___

#### remove

▸ **remove**(): [*Text*](#classesdefaulttextmd)

从地图中删除文本。

**`example`**
const text = new vjmap.Text().addTo(map);
text.remove();

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.

___

#### setAnimation

▸ **setAnimation**(`animationType`: *string*): *void*

设置动画

##### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `animationType` | *string* | MAP_ANIMATION_NONE 无动画 MAP_ANIMATION_BOUNCE 弹跳 MAP_ANIMATION_DROP 坠落 |

**Returns:** *void*

___

#### setCursor

▸ **setCursor**(`cur`: *string*): *void*

设置光标

##### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `cur` | *string* | 光标名称 |

**Returns:** *void*

___

#### setDraggable

▸ **setDraggable**(`shouldBeDraggable`: *boolean*): [*Text*](#classesdefaulttextmd)

设置文本的 `draggable` 属性和功能.

##### Parameters

| Name | Type |
| :------ | :------ |
| `shouldBeDraggable` | *boolean* |

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.

___

#### setLngLat

▸ **setLngLat**(`lnglat`: LngLatLike): [*Text*](#classesdefaulttextmd)

设置经纬度

##### Parameters

| Name | Type |
| :------ | :------ |
| `lnglat` | LngLatLike |

**Returns:** [*Text*](#classesdefaulttextmd)

___

#### setOffset

▸ **setOffset**(`offset`: PointLike): [*Text*](#classesdefaulttextmd)

设置文本的偏移量.

##### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `offset` | PointLike | 以像素为单位的偏移量，作为 PointLike 对象相对于元素的中心应用。负数表示向左和向上。 |

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.

___

#### setPitchAlignment

▸ **setPitchAlignment**(`alignment`: *string*): [*Text*](#classesdefaulttextmd)

设置文本的 `pitchAlignment` 属性.

##### Parameters

| Name | Type |
| :------ | :------ |
| `alignment` | *string* |

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.

___

#### setPopup

▸ **setPopup**(`popup?`: *Popup*): [*Text*](#classesdefaulttextmd)

Binds a `Popup` to the `Text`

##### Parameters

| Name | Type |
| :------ | :------ |
| `popup?` | *Popup* |

**Returns:** [*Text*](#classesdefaulttextmd)

___

#### setRotation

▸ **setRotation**(`rotation`: *number*): [*Text*](#classesdefaulttextmd)

Sets the `rotation` property of the text.

##### Parameters

| Name | Type |
| :------ | :------ |
| `rotation` | *number* |

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.

___

#### setRotationAlignment

▸ **setRotationAlignment**(`alignment`: *string*): [*Text*](#classesdefaulttextmd)

设置文本的 `rotationAlignment` 属性.

##### Parameters

| Name | Type |
| :------ | :------ |
| `alignment` | *string* |

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.

___

#### setStyle

▸ **setStyle**(`style?`: *object*): [*Text*](#classesdefaulttextmd)

设置文本样式

##### Parameters

| Name | Type | Default value |
| :------ | :------ | :------ |
| `style` | *object* | {} |

**Returns:** [*Text*](#classesdefaulttextmd)

___

#### setText

▸ **setText**(`txt`: *string*): [*Text*](#classesdefaulttextmd)

设置文本内容

##### Parameters

| Name | Type |
| :------ | :------ |
| `txt` | *string* |

**Returns:** [*Text*](#classesdefaulttextmd)

___

#### show

▸ **show**(): *void*

显示

**Returns:** *void*

___

#### togglePopup

▸ **togglePopup**(): [*Text*](#classesdefaulttextmd)

根据 `Popup` 的当前状态打开或关闭绑定到 `Text` 的 `Popup` 实例.

**Returns:** [*Text*](#classesdefaulttextmd)

Returns itself to allow for method chaining.


<a name="classesthreelayermd"></a>

[vjmap](#readmemd) / [Exports](#modulesmd) / ThreeLayer
