GroupShape
内容
[
隐藏
]GroupShape class
表示文档中的一组形状。
要了解更多信息,请访问如何将组形状添加到 Word 文档中文档文章。
public class GroupShape : ShapeBase
构造函数
姓名 | 描述 |
---|---|
GroupShape(DocumentBase) | 创建一个新的组形状。 |
特性
姓名 | 描述 |
---|---|
AllowOverlap { get; set; } | 获取或设置一个值,该值指定此形状是否可以与其他形状重叠。 |
AlternativeText { get; set; } | 定义要显示的替代文本,而不是图形。 |
AnchorLocked { get; set; } | 指定形状的锚点是否被锁定。 |
AspectRatioLocked { get; set; } | 指定是否锁定形状的纵横比。 |
BehindText { get; set; } | 指定形状是在文本下方还是上方。 |
Bottom { get; } | 获取形状包含块的底部边缘的位置。 |
Bounds { get; set; } | 获取或设置形状包含块的位置和大小。 |
BoundsInPoints { get; } | 获取形状的包含块相对于最顶部形状的锚点的位置和大小(以点为单位)。 |
BoundsWithEffects { get; } | 获取该形状对象在应用绘图效果后的最终范围。 值以点为单位进行测量。 |
CanHaveImage { get; } | 返回真的 如果形状类型允许形状具有图像。 |
CoordOrigin { get; set; } | 该形状的包含块左上角的坐标。 |
CoordSize { get; set; } | 该形状的包含块内坐标空间的宽度和高度。 |
Count { get; } | 获取此节点的直接子节点的数量。 |
CustomNodeId { get; set; } | 指定自定义节点标识符。 |
DistanceBottom { get; set; } | 返回或设置文档文本与形状底部边缘之间的距离(以磅为单位)。 |
DistanceLeft { get; set; } | 返回或设置文档文本与形状左边缘之间的距离(以磅为单位)。 |
DistanceRight { get; set; } | 返回或设置文档文本与形状右边缘之间的距离(以磅为单位)。 |
DistanceTop { get; set; } | 返回或设置文档文本与形状上边缘之间的距离(以磅为单位)。 |
virtual Document { get; } | 获取该节点所属的文档。 |
Fill { get; } | 获取形状的填充格式。 |
FirstChild { get; } | 获取节点的第一个子节点。 |
FlipOrientation { get; set; } | 切换形状的方向。 |
Font { get; } | 提供对此对象的字体格式的访问。 |
HasChildNodes { get; } | 返回真的 如果该节点有任何子节点. |
Height { get; set; } | 获取或设置形状包含块的高度。 |
HeightRelative { get; set; } | 获取或设置表示形状相对高度百分比的值。 |
HorizontalAlignment { get; set; } | 指定形状如何水平定位。 |
HRef { get; set; } | 获取或设置形状的完整超链接地址。 |
override IsComposite { get; } | 返回真的 因为该节点可以有子节点。 |
IsDecorative { get; set; } | 获取或设置指定形状在文档中是否为装饰性的标志。 |
IsDeleteRevision { get; } | 如果在启用更改跟踪时在 Microsoft Word 中删除了此对象,则返回 true。 |
IsGroup { get; } | 返回真的 如果这是一个团体形状. |
IsHorizontalRule { get; } | 返回真的 如果这个形状是水平尺. |
IsImage { get; } | 返回真的 如果这个形状是图像形状. |
IsInline { get; } | 确定此形状是否与文本内联放置的快速方法。 |
IsInsertRevision { get; } | 如果在启用更改跟踪的情况下将此对象插入到 Microsoft Word 中,则返回 true。 |
IsLayoutInCell { get; set; } | 获取或设置一个标志,指示形状是显示在表格内部还是表格外部。 |
IsMoveFromRevision { get; } | 返回真的 如果启用更改跟踪时在 Microsoft Word 中移动(删除)此对象。 |
IsMoveToRevision { get; } | 返回真的 如果在启用更改跟踪的情况下在 Microsoft Word 中移动(插入)此对象。 |
IsSignatureLine { get; } | 表示形状是SignatureLine . |
IsTopLevel { get; } | 返回真的 如果此形状不是组形状的子项. |
IsWordArt { get; } | 返回真的 如果此形状是艺术字对象. |
LastChild { get; } | 获取节点的最后一个子节点。 |
Left { get; set; } | 获取或设置形状包含块的左边缘位置。 |
LeftRelative { get; set; } | 获取或设置表示形状相对左侧位置(以百分比表示)的值。 |
MarkupLanguage { get; } | 获取用于此图形对象的 MarkupLanguage。 |
Name { get; set; } | 获取或设置可选形状名称。 |
NextSibling { get; } | 获取紧随该节点的下一个节点。 |
override NodeType { get; } | 返回GroupShape. |
ParentNode { get; } | 获取此节点的直接父节点。 |
ParentParagraph { get; } | 返回直接父段落。 |
PreviousSibling { get; } | 获取紧邻此节点之前的节点。 |
Range { get; } | 返回一个Range 表示此节点中包含的文档部分的对象。 |
RelativeHorizontalPosition { get; set; } | 指定形状相对于水平位置的位置。 |
RelativeHorizontalSize { get; set; } | 获取或设置形状在水平方向的相对大小值。 |
RelativeVerticalPosition { get; set; } | 指定相对于形状垂直定位的位置。 |
RelativeVerticalSize { get; set; } | 获取或设置形状在垂直方向的相对大小值。 |
Right { get; } | 获取形状包含块的右边缘位置。 |
Rotation { get; set; } | 定义形状旋转的角度(以度为单位)。 正值对应于顺时针旋转角度。 |
ScreenTip { get; set; } | 定义当鼠标指针移动到形状上时显示的文本。 |
ShadowFormat { get; } | 获取形状的阴影格式。 |
ShapeType { get; } | 获取形状类型。 |
SizeInPoints { get; } | 获取形状的大小(以磅为单位)。 |
Target { get; set; } | 获取或设置形状超链接的目标框架。 |
Title { get; set; } | 获取或设置当前形状对象的标题 (caption)。 |
Top { get; set; } | 获取或设置形状包含块的顶部边缘的位置。 |
TopRelative { get; set; } | 获取或设置表示形状相对顶部位置(以百分比表示)的值。 |
VerticalAlignment { get; set; } | 指定形状如何垂直定位。 |
Width { get; set; } | 获取或设置形状包含块的宽度。 |
WidthRelative { get; set; } | 获取或设置表示形状相对宽度百分比的值。 |
WrapSide { get; set; } | 指定文本如何环绕形状。 |
WrapType { get; set; } | 定义形状是内联还是浮动。对于浮动形状,定义形状周围文本的环绕模式。 |
ZOrder { get; set; } | 确定重叠形状的显示顺序。 |
方法
姓名 | 描述 |
---|---|
override Accept(DocumentVisitor) | 接受访客。 |
AdjustWithEffects(RectangleF) | 添加效果范围的源矩形值并返回最终矩形。 |
AppendChild(Node) | 将指定节点添加到该节点的子节点列表的末尾。 |
Clone(bool) | 创建节点的副本。 |
CreateNavigator() | 创建可用于遍历和读取节点的导航器。 |
FetchInheritedShapeAttr(int) | 保留供系统使用。 IShapeAttrSource. |
FetchShapeAttr(int) | 保留供系统使用。 IShapeAttrSource. |
GetAncestor(NodeType) | 获取指定的第一个祖先NodeType . |
GetAncestor(Type) | 获取指定对象类型的第一个祖先。 |
GetChild(NodeType, int, bool) | 返回与指定类型匹配的第 N 个子节点。 |
GetChildNodes(NodeType, bool) | 返回与指定类型匹配的子节点的实时集合。 |
GetDirectShapeAttr(int) | 保留供系统使用。 IShapeAttrSource. |
GetEnumerator() | 为该节点的子节点上的每个样式迭代提供支持。 |
GetShapeRenderer() | 创建并返回一个可用于将此形状渲染为图像的对象。 |
override GetText() | 获取此节点及其所有子节点的文本。 |
IndexOf(Node) | 返回子节点数组中指定子节点的索引。 |
InsertAfter(Node, Node) | 在指定的引用节点之后立即插入指定的节点。 |
InsertBefore(Node, Node) | 在指定的引用节点之前插入指定的节点。 |
LocalToParent(PointF) | 将局部坐标空间中的值转换为父形状的坐标空间。 |
NextPreOrder(Node) | 根据先序树遍历算法获取下一个节点。 |
PrependChild(Node) | 将指定节点添加到该节点的子节点列表的开头。 |
PreviousPreOrder(Node) | 根据先序树遍历算法获取前一个节点。 |
Remove() | 将自身从父级中删除。 |
RemoveAllChildren() | 删除当前节点的所有子节点。 |
RemoveChild(Node) | 删除指定的子节点。 |
RemoveShapeAttr(int) | 保留供系统使用。 IShapeAttrSource. |
RemoveSmartTags() | 删除所有SmartTag 当前节点的后代节点. |
SelectNodes(string) | 选择与 XPath 表达式匹配的节点列表。 |
SelectSingleNode(string) | 选择第一个Node 与 XPath 表达式匹配。 |
SetShapeAttr(int, object) | 保留供系统使用。 IShapeAttrSource. |
ToString(SaveFormat) | 将节点的内容导出为指定格式的字符串。 |
ToString(SaveOptions) | 使用指定的保存选项将节点的内容导出到字符串中。 |
评论
AGroupShape
是一个复合节点并且可以有Shape
和 GroupShape
节点作为子节点。
每个GroupShape
为其子形状定义一个新的坐标系。 坐标系是使用CoordSize
和 CoordOrigin
特性。
例子
演示如何创建一组形状,并使用文档访问者打印其内容。
public void GroupOfShapes()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// 如果需要创建“NonPrimitive”形状,例如 SingleCornerSnipped、TopCornersSnipped、DiagonalCornersSnipped,
// TopCornersOneRoundedOneSnipped、SingleCornerRounded、TopCornersRounded、DiagonalCornersRounded
// 请使用 DocumentBuilder.InsertShape 方法。
Shape balloon = new Shape(doc, ShapeType.Balloon)
{
Width = 200,
Height = 200,
Stroke = { Color = Color.Red }
};
Shape cube = new Shape(doc, ShapeType.Cube)
{
Width = 100,
Height = 100,
Stroke = { Color = Color.Blue }
};
GroupShape group = new GroupShape(doc);
group.AppendChild(balloon);
group.AppendChild(cube);
Assert.True(group.IsGroup);
builder.InsertNode(group);
ShapeGroupPrinter printer = new ShapeGroupPrinter();
group.Accept(printer);
Console.WriteLine(printer.GetText());
}
/// <summary>
/// 将访问过的形状组的内容打印到控制台。
/// </summary>
public class ShapeGroupPrinter : DocumentVisitor
{
public ShapeGroupPrinter()
{
mBuilder = new StringBuilder();
}
public string GetText()
{
return mBuilder.ToString();
}
public override VisitorAction VisitGroupShapeStart(GroupShape groupShape)
{
mBuilder.AppendLine("Shape group started:");
return VisitorAction.Continue;
}
public override VisitorAction VisitGroupShapeEnd(GroupShape groupShape)
{
mBuilder.AppendLine("End of shape group");
return VisitorAction.Continue;
}
public override VisitorAction VisitShapeStart(Shape shape)
{
mBuilder.AppendLine("\tShape - " + shape.ShapeType + ":");
mBuilder.AppendLine("\t\tWidth: " + shape.Width);
mBuilder.AppendLine("\t\tHeight: " + shape.Height);
mBuilder.AppendLine("\t\tStroke color: " + shape.Stroke.Color);
mBuilder.AppendLine("\t\tFill color: " + shape.Fill.ForeColor);
return VisitorAction.Continue;
}
public override VisitorAction VisitShapeEnd(Shape shape)
{
mBuilder.AppendLine("\tEnd of shape");
return VisitorAction.Continue;
}
private readonly StringBuilder mBuilder;
}
也可以看看
- class ShapeBase
- 命名空间 Aspose.Words.Drawing
- 部件 Aspose.Words