Previous topicNext topic
Help > 开发指南 > Excel > API > 示例 > Shape形状 >
如何:向形状添加文本

本主题介绍如何向形状添加文本。

创建文本框

调用 ShapeCollection.AddTextBox 方法以创建文本框。

下面的代码示例演示如何插入、旋转文本框并为其着色:

Vb.Net
Dim textBox As DevExpress.Spreadsheet.Shape = worksheet.Shapes.AddTextBox(50, 120, 500, 100, "Spreadsheet")
textBox.Fill.SetSolidFill(Color.PowderBlue)
textBox.Rotation = 30

C#
DevExpress.Spreadsheet.Shape textBox = worksheet.Shapes.AddTextBox(50, 120, 500, 100, "Spreadsheet");
textBox.Fill.SetSolidFill(Color.PowderBlue);
textBox.Rotation = 30;

提示

您可以通过设置“形状几何”来更改文本框的ShapeGeometry.Preset属性设置为“ShapeGeometryPreset”值之一。

向现有形状添加文本

下表列出了用于添加形状文本和设置形状文本格式的 API 成员:

成员 说明 描述
Shape.ShapeText 文本 返回形状文本选项。
ShapeText.Characters 字符 返回一个ShapeText范围指定形状中的文本范围的对象。
ShapeTextRange.Text 发短信 定义形状文本。
ShapeText.Formula 公式 允许您将形状文本链接到单元格。
ShapeTextRange.AddBefore 在之前添加 在当前范围之前添加新的文本范围。
ShapeTextRange.AddAfter 添加后 在当前范围之后添加新的文本范围。
ShapeTextRange.Font 字体 允许您更改形状文本范围的字体属性。
ShapeTextRange.ParagraphFormat 段落格式 允许您指定形状文本范围的段落选项。
ShapeText.VerticalAnchor 垂直锚栓 指定形状文本的垂直对齐方式。
ShapeText.HorizontalAnchor 水平锚栓 指定形状文本的水平对齐方式。

下面的代码示例创建形状文本并设置其格式,使其外观与下图相同。

Vb.Net
Dim shapeText As DevExpress.Spreadsheet.ShapeText = shape.ShapeText

'创建一个文本区域。
Dim range As DevExpress.Spreadsheet.ShapeTextRange = shapeText.Characters()

'指定形状的文本。
range.Text = "Shape "

'设置字体属性。
range.Font.Bold = True
range.Font.Color = Color.YellowGreen

'在现有文本后添加新的文本区域并指定其字体属性。
Dim range2 As DevExpress.Spreadsheet.ShapeTextRange = range.AddAfter("Text")
range2.Font.Italic = True
range2.Font.Name = "Arial"
range2.Font.Color = Color.BurlyWood

'定义文本的垂直和水平对齐方式。
shapeText.VerticalAnchor = DevExpress.Spreadsheet.ShapeTextVerticalAnchorType.Center
shapeText.HorizontalAnchor = DevExpress.Spreadsheet.ShapeTextHorizontalAnchorType.Center

C#
DevExpress.Spreadsheet.ShapeText shapeText = shape.ShapeText;

// 创建一个文本区域。
DevExpress.Spreadsheet.ShapeTextRange range = shapeText.Characters();

// 指定形状的文本。
range.Text = "Shape ";

// 设置字体属性。
range.Font.Bold = true;
range.Font.Color = Color.YellowGreen;

// 在现有文本后添加新的文本区域并指定其字体属性。
DevExpress.Spreadsheet.ShapeTextRange range2 = range.AddAfter("Text");
range2.Font.Italic = true;
range2.Font.Name = "Arial";
range2.Font.Color = Color.BurlyWood;

// 定义文本的垂直和水平对齐方式。
shapeText.VerticalAnchor = DevExpress.Spreadsheet.ShapeTextVerticalAnchorType.Center;
shapeText.HorizontalAnchor = DevExpress.Spreadsheet.ShapeTextHorizontalAnchorType.Center;