DOC文件中的图片

时间:2012-10-01 12:52:22

标签: c# ms-office office-interop

我的文件格式为DOC(MS Word 97-2003),我想获得此文件中使用的所有图像的列表。我尝试使用“Microsoft.Office.Interop.Word”命名空间,如下面的代码

Application application = new Application();
Document document = application.Documents.Open(dataPath);

var words = document.InlineShapes;
int count = words.Count;

for (int i = 0; i < count; i++)
{
    if (words[i] != null)
    {
        Console.WriteLine("{0} : {1}", i, words[i].PictureFormat);
    }
}

但我在这个文件中找不到任何图像(实际上存在两个图像)。也许我做错了什么?你能推荐我任何图书馆,这很容易。我无法将文件转换为DOCX

2 个答案:

答案 0 :(得分:1)

使用document.InlineShapes抓取图片。

答案 1 :(得分:0)

这可能很有趣,但在这种情况下,我认为,编号从1开始。这就是为什么你得到COMException:“元素在集合中不存在”。

尝试:

for (int i = 1; i <= count; i++)
{
    if (words[i] != null)
    {
        Console.WriteLine("{0} : {1}", i, words[i].PictureFormat);
    }
}