[返回博客](/cn/blog) # 在 Teigha BIM 中创建文本元素

Alexander Geniatov 十一月 02, 2017 [\#rvt](/cn/blog/tag/rvt) [\#rfa](/cn/blog/tag/rfa) [\#getting started](/cn/blog/tag/getting-started)

<a class="a2a_button_facebook"></a><a class="a2a_button_twitter"></a><a class="a2a_button_linkedin"></a>

要在文档中创建文本元素，请创建一个 OdBmTextNote 类对象并将其添加到数据库中。

文本注释使用常规元素接口在数据库中创建和注册；您只需定义文本特有的数据。以下是定义文本元素的主要属性：

- 添加文本的视图
- 文本
- 位置
- 方向
- 宽度

可以使用以下接口设置此数据：

- setOwnerDBViewId(OdBmObjectId) — 接口继承自 Element，定义创建文本元素的视图。将元素添加到数据库后，视图 ID 不得更改。
- setRawText(OdString&amp;) — 从原始文本字符串设置文本。
- setRtfText(OdAnsiString&amp;) — 从 RTF 文本字符串设置文本。
- setOrigin(OdGePoint3d) — 设置文本的原点。根据文本对齐原点，它是文本左/中/右顶/中/底部的点。例如，对于左水平对齐和顶部垂直对齐，原点是左上角点。
- setVertAlign(OdBm::VerticalAlignment::Enum) — 设置垂直对齐方式。
- setHorzAlign(OdBm::HorizontalAlignment::Enum) — 设置水平对齐方式。
- setDirection(OdGeVector3d) — 设置文本的水平方向。文本的垂直方向是根据水平方向的设置，使用视图方向作为法线自动计算的。
- setWidth(double) — 设置文本的宽度。如果此宽度小于一行文本的宽度，则文本将换行。
- setKeepReadable(bool) — 设置保持可读模式。如果启用，文本始终从左到右（如果平行于 y 轴，则从下到上）绘制。如果此标志打开的文本方向是从右到左或从上到下，则在渲染时文本将旋转 180 度。
- setType(OdBmObjectId) — 设置文本注释类型 ID。ID 参数必须指向 OdBmTextNoteAttributes 对象，否则该方法将返回 eInvalidInput 错误。
- setLeaderLeftAttachment(OdBm::LeaderAttachment::Enum) — 设置左引线附件位置。
- setLeaderRightAttachment(OdBm::LeaderAttachment::Enum) — 设置右引线附件位置。

#### 默认值

除了文本，所有其他属性都是可选的。如果您在将文本元素添加到数据库之前未设置它们，它们将填充默认值：

- 视图 ID 设置为活动视图的 ID。
- 原点设置为 (0, 0, 0)。
- 文本对齐方式设置为左/上。
- 方向设置为视图的右方向。
- 宽度设置为不换行的文本宽度。
- 左引线附件设置为顶线。
- 右引线附件设置为底线。

#### 示例

```
OdBmTextNotePtr pTextNote3 = OdBmTextNote::createObject();
zpTextNote3->setOrigin(OdGePoint3d::kOrigin);
pTextNote3->setVertAlign(OdBm::VerticalAlignment::Middle);
pTextNote3->setHorzAlign(OdBm::HorizontalAlignment::Center);
pTextNote3->setDirection(OdGeVector3d::kXAxis);
pTextNote3->setRawText(L"Text line 1\nLine2");
pTextNote3->setKeepReadable(true);
pDb->addElement(pTextNote3);

```

## 今天就开始行动

**免费试用 ODA 软件 60 天。  
无风险，无需信用卡。**

[免费试用](https://www.opendesign.com/cn/free-trial)
