我在开发一程序(VC),会调用WORD来进行盖章等操作。 插入图片的代码(这里简便起见用VBA代码)是
set inlineA=Selection.InlineShapes.addpicture("c:\123.bmp",false,true)
这里默认插入的是嵌入型,不过因后面有其他操作,需将其变为shape
inlineA.select
inlineA.ConvertToShape
转化成shape后,我发现再不能将其恢复成嵌入型了,wrapformat 和 Zorder都有设置,不过没用。
本想通过录制宏的办法来分析,不过发现录制时,没有办法改掉图片的环绕方式为嵌入型(变灰)
哪位可以帮忙,多谢!!!
set inlineA=Selection.InlineShapes.addpicture("c:\123.bmp",false,true)
这里默认插入的是嵌入型,不过因后面有其他操作,需将其变为shape
inlineA.select
inlineA.ConvertToShape
转化成shape后,我发现再不能将其恢复成嵌入型了,wrapformat 和 Zorder都有设置,不过没用。
本想通过录制宏的办法来分析,不过发现录制时,没有办法改掉图片的环绕方式为嵌入型(变灰)
哪位可以帮忙,多谢!!!
本节说明应如何: 根据名称或编号返回文档中的一个原有图形。
返回所选部分中的一个或多个图形。
返回一个新创建的图形。
返回一组中的单个图形。
返回新近组合的一组图形。
返回文档中的一个原有图形
用 Shapes(index) 可返回单独的 Shape 对象,其中 index 为该对象的名称或索引序号。下例水平翻转活动文档中的第一个图形。ActiveDocument.Shapes(1).Flip msoFlipHorizontal
下例水平翻转活动文档中名为“Rectangle 1”的图形。ActiveDocument.Shapes("Rectangle 1").Flip msoFlipHorizontal
每个图形在创建时都得到一个默认的名称。如果向文档中添加三个不同的图形,它们将得到如“矩形 2”、“文本框 3”和“椭圆 4”之类的名称。若要给图形起一个更有意义的名称,请设置其 Name 属性。返回选定部分中的一个或多个图形
用 Selection.ShapeRange(index) 可返回一个 Shape 对象,该对象代表选定部分中的一个图形,其中 index 为图形名称或索引序号。下例设置选定部分中第一个图形的填充效果(假定在选定部分中至少有一个图形)。Selection.ShapeRange(1).Fill.ForeColor.RGB = RGB(255, 0, 0)
下例为选定部分中所有图形设置填充效果(假定选定部分至少包含一个图形)。Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 0, 0)
返回一个新创建的图形
如果要向指定文档的图形集合添加一个 Shape 对象,并返回一个代表新创建的图形 Shape 对象,请使用 Shapes 集合的下列方法之一:AddCallout、AddCurve、AddLabel、AddLine、AddOleControl、AddOleObject、AddPolyline、AddShape、AddTextbox、AddTextEffect 或 BuildFreeForm。下例将一个矩形添加到活动文档。ActiveDocument.Shapes.AddShape msoShapeRectangle, 50, 50, 100, 200
返回组合中的单个图形
用 GroupItems(index) 可以返回 Shape 对象,该对象代表组合中的单个图形,其中 index 为图形在该组中的名称或索引序号。返回新近组合的一组图形
用 Group 或 Regroup 方法可对某一区域的图形加以组合,并返回单独的 Shape 对象,该对象代表该新组合。在一个组合形成之后,处理该组合的方式与处理其他图形的方式相同。锁定和放置图形
每个 Shape 对象都锁定于某一区域的文本。一个图形位置锁定于包含锁定标记的区域的第一段的开始处。该图形总是与其锁定标记处于同一页上。将 ShowObjectAnchors 属性设置为 True,就可看到锁定标记。该图形的 Top 和 Left 属性确定图形的垂直和水平位置。该图形的 RelativeHorizontalPosition 和 RelativeVerticalPosition 属性确定图形的定位依据:可以是锁定标记所在的段落、包含该段落所在的栏、页边距或页面边缘。如果图形的 LockAnchor 属性为 True,则不能在页面上拖动锁定标记。设置图形的格式
用 Fill 属性可返回一个 FillFormat 对象,该对象包含了设置封闭图形填充效果所需的所有属性和方法。用 Shadow 属性可返回 ShadowFormat 对象,该对象可用来设置阴影。用 Line 属性可返回 LineFormat 对象,该对象包含了设置线条和箭头效果所需的各种属性和方法。用 TextEffect 属性可返回 TextEffectFormat 对象,该对象可用来设置“艺术字”的格式。用 Callout 属性可返回 CalloutFormat 对象,该对象可用来设置线型标注的格式。用 WrapFormat 属性可返回 WrapFormat 对象,该对象可用来定义文字环绕图形的方式。用 ThreeD 属性可返回 ThreeDFormat 对象,该对象可用来创建三维图形。用 PickUp 和 Apply 方法可将一个图形的格式传递给(即应用于)另一个图形。用 Shape 对象的 SetShapesDefaultProperties 方法可设置文档的默认图形格式。新的图形可继承默认图形的多种属性。图形的其他重要属性
用 Type 属性可指定图形的类型,例如任意多边形、自选图形、OLE 对象、标注或链接图片。用 AutoShapeType 属性可以指定自选图形的类型,例如椭圆、矩形或气球形。用 Width 和 Height 属性可指定图形尺寸。TextFrame 属性返回 TextFrame 对象,该对象包含了将文本附加于图形以及链接文本框之间的文本所需的所有属性和方法。
被锁定了,没有办法的事情,这个是ms的要求的说
set shapeA=inlineA.ConvertToShape
leftA=shapeA.left
topA=shapeA.top+shapeA.height-50
set shape=ActiveDocument.shapes.AddTextFrame(1,leftA+30,topA,160,48)有解决方法吗?