Class ShapeBase

ShapeBase class

绘图层中对象的基类,例如自选图形、自由格式、OLE 对象、ActiveX 控件或图片。

public abstract class ShapeBase : CompositeNode

特性

姓名 描述
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; } 如果形状类型允许形状具有图像,则返回 true。
ChildNodes { 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; } 如果此节点有任何子节点,则返回 true。
Height { get; set; } 获取或设置形状包含块的高度。
HorizontalAlignment { get; set; } 指定形状如何水平放置。
HRef { get; set; } 获取或设置形状的完整超链接地址。
override IsComposite { get; } 返回真,因为该节点可以有子节点。
IsDecorative { get; set; } 获取或设置指定形状在文档中是否具有装饰性的标志。
IsDeleteRevision { get; } 如果在启用更改跟踪时在 Microsoft Word 中删除了此对象,则返回 true。
IsGroup { get; } 如果这是一个组形状,则返回 true。
IsHorizontalRule { get; } 如果此形状是水平规则,则返回 true。
IsImage { get; } 如果此形状是图像形状,则返回 true。
IsInline { get; } 一种快速确定此形状是否与文本内联的方法。
IsInsertRevision { get; } 如果在启用更改跟踪时将此对象插入 Microsoft Word,则返回 true。
IsLayoutInCell { get; set; } 获取或设置一个标志,指示形状是显示在表格内还是表格外。
IsMoveFromRevision { get; } 返回 真的如果启用更改跟踪时此对象在 Microsoft Word 中被移动(删除)。
IsMoveToRevision { get; } 返回 真的如果启用更改跟踪时在 Microsoft Word 中移动(插入)此对象。
IsSignatureLine { get; } 表示形状是 SignatureLine.
IsTopLevel { get; } 如果此形状不是组形状的子形状,则返回 true。
IsWordArt { get; } 如果此形状是艺术字对象,则返回 true。
LastChild { get; } 获取节点的最后一个子节点。
Left { get; set; } 获取或设置形状包含块的左边缘位置。
MarkupLanguage { get; } 获取用于此图形对象的 MarkupLanguage。
Name { get; set; } 获取或设置可选的形状名称。
NextSibling { get; } 获取紧跟此节点的节点。
abstract NodeType { get; } 获取此节点的类型。
ParentNode { get; } 获取此节点的直接父节点。
ParentParagraph { get; } 返回直接父段落。
PreviousSibling { get; } 获取紧接在此节点之前的节点。
Range { get; } 返回一个 范围表示此节点中包含的文档部分的对象。
RelativeHorizontalPosition { get; set; } 指定相对于水平位置的形状。
RelativeVerticalPosition { get; set; } 指定相对于形状垂直定位的位置。
Right { get; } 获取形状包含块的右边缘位置。
Rotation { get; set; } 定义形状旋转的角度(以度为单位)。 正值对应于顺时针旋转角度。
ScreenTip { get; set; } 定义当鼠标指针移到形状上时显示的文本。
ShadowFormat { get; } 获取形状的阴影格式。
ShapeType { get; } 获取形状类型。
SizeInPoints { get; } 以点为单位获取形状的大小。
Target { get; set; } 获取或设置形状超链接的目标框架。
Title { get; set; } 获取或设置当前形状对象的标题(标题)。
Top { get; set; } 获取或设置形状包含块的上边缘的位置。
VerticalAlignment { get; set; } 指定形状如何垂直定位。
Width { get; set; } 获取或设置形状包含块的宽度。
WrapSide { get; set; } 指定文本如何环绕形状。
WrapType { get; set; } 定义形状是内联的还是浮动的。对于浮动形状,定义形状周围文本的环绕模式。
ZOrder { get; set; } 确定重叠形状的显示顺序。

方法

姓名 描述
abstract Accept(DocumentVisitor) 接受访客。
AdjustWithEffects(RectangleF) 添加到效果范围的源矩形值并返回最终矩形。
AppendChild(Node) 将指定节点添加到该节点的子节点列表的末尾。
Clone(bool) 创建节点的副本。
CreateNavigator() 保留供系统使用。 IXPathNavigable.
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) 选择与 XPath 表达式匹配的第一个节点。
SetShapeAttr(int, object) 保留供系统使用。 IShapeAttrSource.
ToString(SaveFormat) 将节点的内容导出为指定格式的字符串。
ToString(SaveOptions) 使用指定的保存选项将节点的内容导出为字符串。

评论

这是一个抽象类。您可以实例化 的两个派生类是ShapeGroupShape.

形状是文档树中的一个节点。

如果形状是 a 的孩子Paragraph对象,则该形状被称为“顶级”。 顶级形状以点为单位进行测量和定位。

形状也可以作为 a 的子级出现GroupShape多个shapes 被分组时的对象。组形状的子形状位于坐标空间中,units 由CoordSizeCoordOriginparent 组形状的属性。

形状可以与文本内联或浮动定位。定位方法是使用受控 WrapType财产。

当一个形状浮动时,它是相对于某物(例如当前段落、 边距或页面)定位的。使用 指定形状的相对定位RelativeHorizontalPositionRelativeVerticalPosition特性。

使用LeftTop 属性或使用相对于其他对象对齐HorizontalAlignmentVerticalAlignment特性。

例子

演示如何将浮动图像插入页面中心。

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// 插入将出现在重叠文本后面的浮动图像,并将其与页面中心对齐。
Shape shape = builder.InsertImage(ImageDir + "Logo.jpg");
shape.WrapType = WrapType.None;
shape.BehindText = true;
shape.RelativeHorizontalPosition = RelativeHorizontalPosition.Page;
shape.RelativeVerticalPosition = RelativeVerticalPosition.Page;
shape.HorizontalAlignment = HorizontalAlignment.Center;
shape.VerticalAlignment = VerticalAlignment.Center;

doc.Save(ArtifactsDir + "Image.CreateFloatingPageCenter.docx");

也可以看看