下列代码需要解决2个问题,一是印章的位置,希望印章位置不要固定,自动根据内容进行调整,找到“【盖章】”处替换;二是印章叠放次序问题,印章置于底层,自动衬于文字下方。
Dim fl As String = ProjectPath & "test.docx"
Dim fl1 As String = ProjectPath & "test1.docx"
FileSys.CopyFile(fl,fl1,True)
Dim img As String = ProjectPath & "印章1.png"
Dim app As New
MSWord.Application
try
Dim doc = app.Documents.Open(fl)
app.Selection.Find.Text = "【盖章】"
app.Selection.Find.Execute
Dim pic =
app.Selection.InlineShapes.AddPicture(filename:=img, linktofile:=False,
savewithdocument:=True).ConvertToShape '插入图形
With pic
.WrapFormat.Type = MSWord.WdWrapType.wdWrapFront
.RelativeHorizontalPosition =
MSWord.WdRelativeHorizontalPosition.wdRelativeHorizontalPositionRightMarginArea
'相对于右边距
.Left = -.Width '取图片宽度的负数
.RelativeVerticalPosition =
MSWord.WdRelativeVerticalPosition.wdRelativeVerticalPositionBottomMarginArea '相对于下边距
.Top = -.Height '取图片高度的负数
.LockAspectRatio = True
.Height = 113.5 '印章大小正确
End With
Doc.SaveAs(Filename:= fl1)
catch ex As exception
msgbox(ex.message)
app.Quit
finally
End try
Dim Proc As New
Process
Proc.File = fl1
Proc.Start()