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; }返回真的如果形状类型允许形状具有图像。
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; }获取紧随该节点的下一个节点。
abstract NodeType { get; }获取此节点的类型。
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; }确定重叠形状的显示顺序。

方法

姓名描述
abstract 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(NodeNode)在指定的引用节点之后立即插入指定的节点。
InsertBefore(NodeNode)在指定的引用节点之前插入指定的节点。
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)使用指定的保存选项将节点的内容导出到字符串中。

评论

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

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

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

形状也可以作为GroupShape当多个shapes 分组时的对象。组形状的子形状位于坐标空间中,并且units 由CoordSizeCoordOriginParent 组形状的属性。

形状可以与文本内嵌或浮动放置。定位方法是controlled ,使用WrapType财产。

当形状浮动时,它是相对于某些东西定位的(例如当前段落、 边距或页面)。形状的相对定位使用 the 指定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");

也可以看看