繁体   English   中英

使用Open XML从Word文档中提取Visio图?

[英]Extract Visio diagram from word document using open xml?

我正在尝试分析word文档,它具有visio图表和图像。 我无法使用C#Open XML提取图表并将其保存为visio格式(.vsd,.vdx,.vsdx,.vsdm)。

我已经找到并回答了我自己的问题。 下面是代码(如果有)。

下面的代码将帮助您获取Word文档中的所有图像。

foreach (ImagePart imagePart in doc.MainDocumentPart.ImageParts)
{
    var uri = imagePart.Uri;
    var IdR = doc.MainDocumentPart.GetIdOfPart(imagePart);
    string FileExtension = uri.OriginalString.Split('.').Last();
    var filename = uri.ToString().Split('/').Last();
    stream = doc.Package.GetPart(uri).GetStream();
    Bitmap b = new Bitmap(stream);
    string FilePath = @"C:\test"." + FileExtension;
    b.Save(FilePath);
}

下面将帮助您获取Word文档中的嵌入式对象,例如:Visio,MP3视频。

var IdR = doc.MainDocumentPart.GetIdOfPart(embeddedobjectpart);
string FileExtension = embeddedobjectpart.Uri.OriginalString.Split('.').Last();
FileExtension = "vsd";
stream = doc.Package.GetPart(embeddedobjectpart.Uri).GetStream();
long length = stream.Length;
byte[] byteStream = new byte[length];
stream.Read(byteStream, 0, (int)length);
string FilePath =@"C:\test"." + "." + FileExtension;
fstream = new FileStream(FilePath, FileMode.OpenOrCreate)
fstream.Write(byteStream, 0, (int)length);
fstream.Close();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM