添加到word doc时图片重叠

时间:2014-04-18 10:35:26

标签: c# .net ms-word

我有一个word文档,我通过C#代码添加两张图片。当我在程序完成后打开word文件时,我可以看到这两个图片正在重叠。有没有办法让图片一个接一个?

以下是我正在使用的代码:

Microsoft.Office.Interop.Word.Application WordApp = new Microsoft.Office.Interop.Word.Application();         
WordApp.Documents.Add();         
WordApp.Visible = true;         
Microsoft.Office.Interop.Word.Document doc = WordApp.ActiveDocument;
doc.Shapes.AddPicture("c:\\mypic1.jpeg");
doc.Shapes.AddPicture("c:\\20140203_202325.jpg");            
doc.SaveAs2("C:\\MyDocument.doc");            
WordApp.Quit(Type.Missing, Type.Missing, Type.Missing);

我可以一张接一张地拍照,还是用它们之间的某些线条来拍照?

2 个答案:

答案 0 :(得分:0)

您可以尝试在文档对象上使用InlineShapes而不是Shapes,如下所示:

var WordApp = new Microsoft.Office.Interop.Word.Application();         
WordApp.Documents.Add();
WordApp.Visible = true;         
Microsoft.Office.Interop.Word.Document doc = WordApp.ActiveDocument;
doc.InlineShapes.AddPicture("c:\\mypic1.jpeg");
doc.InlineShapes.AddPicture("c:\\20140203_202325.jpg");            
doc.SaveAs2("C:\\MyDocument.doc");            
WordApp.Quit(Type.Missing, Type.Missing, Type.Missing);

这会将图片一个接一个地放在一边(请记住,如果第一张图片太大而第二张图片不适合同一页面,则会进入第二页)。

希望有所帮助, 乔恩

答案 1 :(得分:0)

刚发现这个:http://msdn.microsoft.com/en-us/library/office/ff191833(v=office.15).aspx它应该对你有帮助。

你基本上需要指定每张图片的位置,例如:

 .AddPicture(FileName, LinkToFile, SaveWithDocument, Left, Top, Width, Height)