我想在Word中的页脚中的特定位置插入图像。我正在将此代码用于“。doc” 文档:
Option Explicit
Sub CATMain()
Dim strPathImg As String
strPathImg = "C:\Test\Img.png"
Dim wrdApp
Set wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
Dim myWrdDoc
Set myWrdDoc = wrdApp.Documents.Open("C:\Test\Document.doc") 'chage path for .docx to: "C:\Test\Document.docx"
Dim wrdFootShape
Set wrdFootShape = myWrdDoc.Sections.Last.Footers(1).Shapes
Dim objPic As Object
Set objPic = wrdFootShape.AddPicture(FileName:=strPathImg,
LinkToFile:=False, SaveWithDocument:=True, Left:=120, Top:=50)
End Sub
,除了“。docx” 文档外,此方法效果很好。这行代码不会插入图片,也不会显示任何错误。
在“ .docx”类型的文档的页脚中的特定位置插入图像应该采用什么方法?
预先感谢,感谢您的回答
答案 0 :(得分:1)
某些版本的Word倾向于将图形对象推离页面(太高,太低,太左或太右)。引入了具有新文件格式的新图形引擎,它可能(至少部分地)是造成doc和docx之间差异的原因。
对于问题中的示例, doc 文件解释了相对于插入StoryRange
的{{1}}的位置属性。对于 docx 文件,这很可能与文档页面有关,而不是特定的Shape
。 (Story
的语言参考提到相对于工程图画布。)
问题中的代码将图形从顶部向下定位50个点,这将其推到 doc 文件的页面下方。在 docx 文件中,图形位于文档顶部附近。
以下代码示例基于问题中的代码,显示了如何通过测试文档的AddPicture
来实现这一点。其他保存格式也是可能的,这仅涉及正在讨论的两种文件格式。
SaveFormat