【发布时间】:2011-12-17 18:13:12
【问题描述】:
我一直在尝试使用以下 C# 代码从 doc 文件中提取图像,但它不起作用:
object missing = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Word.Application oWord = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document oDoc = new Microsoft.Office.Interop.Word.Document();
oWord.Visible = false;
object str1 = "C:\\doc.doc";
oDoc = oWord.Documents.Open(ref str1, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
if (oDoc.InlineShapes.Count > 0) {
for (int j = 0; j < oDoc.InlineShapes.Count; j++)
{
oWord.ActiveDocument.Select();
oDoc.ActiveWindow.Selection.CopyAsPicture();
IDataObject data = Clipboard.GetDataObject();
if (data.GetDataPresent(typeof(System.Drawing.Bitmap)))
{
object bm = data.GetData(DataFormats.Bitmap);
Bitmap bmp;
bmp = (Bitmap)data.GetData(typeof(System.Drawing.Bitmap));
bmp.Save("C:\\test.bmp");
}
}
谁能给出从word文件中提取图像的正确代码?
【问题讨论】:
-
如果您可以管理
DOCX文件,它们就是简单的压缩文件。你可以打开它们找到二进制文件,然后阅读 XML 索引来找出你想要的那个。
标签: c# excel-interop