彩票走势图

logo Aspose中文文档
文档彩票走势图>>Aspose中文文档>>从Word文档中提取图像

从Word文档中提取图像


Aspose.Words是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。

Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

Aspose.Words for .NET 最新下载

使用 Aspose.Words

在 Aspose.Words 中,使用Shape类来处理图像。要选择所有形状节点,请使用GetChildNodes方法,并使用ImageData属性提取图像数据。

以下代码示例演示如何从文档中提取图像并将其另存为文件:

Document doc = new Document(MyDir + "Extract image.docx");
// Save the document to memory and reload it.
using (MemoryStream stream = new MemoryStream())
{
doc.Save(stream, SaveFormat.Doc);
Document doc2 = new Document(stream);
// "Shape" nodes that have the "HasImage" flag set contain and display images.
IEnumerable<Shape> shapes = doc2.GetChildNodes(NodeType.Shape, true)
.OfType<Shape>().Where(s => s.HasImage);
int imageIndex = 0;
foreach (Shape shape in shapes)
{
string imageFileName =
$"Image.ExportImages.{imageIndex}_Aspose.Words_{FileFormatUtil.ImageTypeToExtension(shape.ImageData.ImageType)}";
shape.ImageData.Save(ArtifactsDir + imageFileName);
imageIndex++;
}
}

点击复制

使用 Open XML SDK

需要添加的命名空间:


using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using DocumentFormat.OpenXml.Packaging;
using NUnit.Framework;

点击复制


以下代码示例演示如何从文档中提取图像并将其另存为文件:

public void ExtractImageFromWordDocumentFeature()
{
using (WordprocessingDocument doc = WordprocessingDocument.Open(MyDir + "Extract image.docx", false))
{
int imgCount = doc.MainDocumentPart.GetPartsOfType<ImagePart>().Count();
if (imgCount > 0)
{
List<ImagePart> imgParts = new List<ImagePart>(doc.MainDocumentPart.ImageParts);
foreach (ImagePart imgPart in imgParts)
{
Image img = Image.FromStream(imgPart.GetStream());
string imgfileName = imgPart.Uri.OriginalString.Substring(imgPart.Uri.OriginalString.LastIndexOf("/") + 1);
img.Save(ArtifactsDir + imgfileName);
}
}
}
}

点击复制


下载此示例的示例文件。
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP