IronWord 操作指南 提取图像 Extract Images from DOCX with C# using IronWord Ahmad Sohail 已更新:2026年2月22日 下载 IronWord NuGet 下载 免费试用 LLM副本 LLM副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在 Grok 中打开 向 Grok 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 This article was translated from English: Does it need improvement? Translated View the article in English IronWord 的 ExtractImages() 方法可让您通过编程方式从 Word 文档中提取所有嵌入的图片,从而获取图片数据及尺寸、格式等元数据,以便进行保存或处理。 快速入门:使用 C# 从 DOCX 中提取图像 使用 NuGet 包管理器安装 https://www.nuget.org/packages/IronWord PM > Install-Package IronWord 复制并运行这段代码。 // Install IronWord: Install-Package IronWord using IronWord; using IronSoftware.Drawing; // Load your Word document WordDocument doc = new WordDocument("document.docx"); // Extract all images var images = doc.ExtractImages(); // Save each image with custom naming int imageIndex = 0; foreach (var image in images) { // Cast to AnyBitmap to access SaveAs method ((AnyBitmap)image.Image).SaveAs($"output-{imageIndex}.png"); // Access image properties Console.WriteLine($"Image {imageIndex}: {image.Width}x{image.Height}"); imageIndex++; } 部署到您的生产环境中进行测试 通过免费试用立即在您的项目中开始使用IronWord Free 30 Day Trial 从 Word 文档中提取图像是内容迁移、媒体管理和程序化文档处理的常见需求。 无论您是要构建内容管理系统、实现文档工作流程自动化,还是要创建数字档案,IronWord 都能简化对嵌入式图片的访问,允许保存、重复使用或通过尺寸和格式等属性对其进行分析。 开始使用 IronWord 如何从 DOCX 中提取图片 安装IronWord: `Install-Package IronWord` 加载现有 Word 文档 调用`ExtractImages()`函数检索所有嵌入的图像 遍历所有图像并将它们保存到磁盘 访问图像属性,例如宽度和高度 如何从 Word 文档中提取图像? 使用 IronWord 从 Word 文档中提取图像非常简单。 文件 embedded_images.docx 将作为示例文件,其中包含分布在 3 个不同页面上的 5 张图片。 下面的代码片段定义了使用 ExtractImages() 方法进行图像提取的核心工作流。 在使用文档处理库时,必须了解许可要求,以确保您的应用程序符合使用条款。 IronWord 采用与其他 Iron 产品类似的许可模式,提供永久许可和全面的支持选项。 对于生产部署,您需要应用许可证密钥来移除任何水印或限制。 :path=/static-assets/word/content-code-examples/how-to/extract-images-properties.cs using System; using IronWord; using IronSoftware.Drawing; // Load an existing Word document WordDocument doc = new WordDocument("embedded_images.docx"); // Extract all images from the document var images = doc.ExtractImages(); // Iterate through extracted images int count = 0; foreach (var image in images) { // Save each image to disk string fileName = $"extracted-image-{count}.png"; ((AnyBitmap)image.Image).SaveAs(fileName); Console.WriteLine($"Extracted image {count}:"); Console.WriteLine($"Width: {image.Width}"); Console.WriteLine($"Height: {image.Height}"); Console.WriteLine($"Saved as: {fileName}"); count++; } Console.WriteLine($"Total images extracted: {count}"); $vbLabelText $csharpLabel ExtractImages 方法返回一个可枚举的图像对象集合,每个对象包含完整的图像数据及元数据。 要保存图片,请将 Image 属性转换为 AnyBitmap,并使用 ((AnyBitmap)image.Image).SaveAs() 调用 SaveAs 方法。 这需要在您的命名空间声明中添加 using IronSoftware.Drawing;。 这种方法允许灵活的处理工作流程--您可以将图像保存到磁盘,如上图所示,也可以将其转换为不同的格式,或直接将其流到云存储服务。 该方法可处理 Word 文档中常见的各种图像格式,包括 JPEG、PNG、BMP 和 GIF。 示例文档是什么样的? 我应该期待什么样的产出? 提取的图片应保留其原始格式(例如 .png 或其他格式),并可使用相应的文件扩展名进行保存。 您可以遍历文档中的所有图像,也可以根据您的要求选择特定部分。 高级图像提取场景 除了基本的提取功能外,IronWord 的图像处理功能还支持开发人员在生产应用程序中经常遇到的几种高级场景: 批量处理多个文档:在处理大型文档集时,您可以实施并行处理,同时从多个 Word 文件中提取图像。 这种方法大大缩短了文档归档或内容迁移项目的处理时间。 图像格式转换:提取的图像对象支持格式之间的转换。 您可能会从 Word 文档中提取 JPEG 并将其保存为 PNG 以进行网络优化,或者将其转换为 WebP 以兼容现代浏览器。 元数据保留:每张提取的图像都保留了重要的元数据,包括尺寸、分辨率和颜色深度。 在实施图像优化管道或在整个应用程序中保持质量标准时,这些信息将非常有价值。 对于需要持续支持和定期更新的企业应用程序,可以考虑使用许可证扩展,这样可以持续获得新功能和优先支持。 如果您的项目范围扩大,升级选项允许无缝扩展,以覆盖更多的开发人员或部署地点。 与文档工作流集成 图像提取通常是大型文档处理工作流程的一部分。 考虑这些常见的集成模式: 内容管理系统:在文档上传过程中提取图片,以创建缩略图预览、构建图片库或填充媒体库。 提取的图像可以为搜索功能编制索引或标记文档元数据。 文档转换管道:将 Word 文档转换为其他格式时,可以单独处理提取的图像,以获得最佳质量。 这种分离允许针对特定格式进行优化--例如,针对网络输出和打印输出应用不同的压缩设置。 质量保证工作流程:通过自动提取,可对嵌入式图片进行系统审查,以确保其符合品牌准则、分辨率要求或文件大小限制。 您可以在发布前标记包含低分辨率图片或不正确格式的文档。 要了解文档处理功能的最新功能和改进,请定期查看 产品更新日志。 新版本通常包括性能增强和扩展的格式支持,可使您的图像提取工作流程受益匪浅。 性能考虑 在处理包含大量或高分辨率图片的文档时,请考虑以下性能优化策略: 内存管理:分批处理图像,而不是同时将所有图像加载到内存中。 在处理大型文档或高分辨率图像时,这种方法可以防止内存耗尽。 异步处理:为 I/O 操作实施异步/等待模式,尤其是将提取的图像保存到磁盘或网络存储时。 这将使您的应用程序在长时间的提取操作中保持反应灵敏。 选择性提取:如果您只需要特定的图像,请考虑根据图像属性或文档结构实施过滤器,以避免处理不必要的内容。 强大的 API 设计可确保在不同的文档类型和图像格式中使用一致的行为,从而可以直接在您的 .NET 应用程序中构建可靠的图像提取功能。 常见问题解答 如何用 C# 从 DOCX 文件中提取图像? 您可以使用 IronWord 的 ExtractImages() 方法从 DOCX 文件中提取图片。只需使用 WordDocument doc = new WordDocument("document.docx")加载 Word 文档,然后调用 doc.ExtractImages() 提取所有嵌入的图像。每张图片都可以使用 SaveAs() 方法以您喜欢的格式和文件名保存。 从 Word 文档中提取图像时,可以访问哪些图像属性? IronWord 可访问重要的图像元数据,包括宽度和高度尺寸。ExtractImages() 方法会返回一个图像对象集合,其中既包含原始图像数据,也包含这些元数据属性,因此您可以根据图像的特征对其进行编程分析或处理。 能否将提取的图像保存为不同格式? 是的,IronWord 允许您将提取的图像保存为各种格式。在每个图像对象上使用 SaveAs() 方法,并指定所需的文件名和适当的扩展名(如 .png、.jpg)。程序库会根据您提供的文件扩展名自动处理格式转换。 如何安装从 Word 文档中提取图像的库? 使用命令通过 NuGet 软件包管理器安装 IronWord:Install-Package IronWord。安装完成后,在 C# 文件中添加 "using IronWord;",即可访问图像提取功能和其他文档处理功能。 能否从多页 Word 文档中提取图像? 是的,IronWord 的 ExtractImages() 方法可以从整个 Word 文档中提取所有图像,而不管文档包含多少页。该方法会返回文档中所有嵌入图片的完整集合,无论这些图片是在一页上还是分布在多页上。 Ahmad Sohail 立即与工程团队聊天 全栈开发者 Ahmad 是一名全栈开发人员,拥有扎实的 C#、Python 和 Web 技术基础。他对构建可扩展的软件解决方案深感兴趣,并喜欢探索设计和功能在实际应用中如何结合。在加入 Iron Software 团队之前,Ahmad 致力于自动化项目和 API 集成,专注于提高性能和开发人员体验。在业余时间,他喜欢尝试 UI/UX 想法,贡献开源工具,并偶尔从事技术写作和文档工作,以便让复杂主题更易于理解。 准备开始了吗? Nuget 下载 36,374 | 版本: 2026.3 刚刚发布 免费试用 免费 NuGet 下载 总下载量:36,374 查看许可证 还在滚动吗? 想快速获得证据? PM > Install-Package IronWord 运行示例 观看您的数据变成 Word 文档。 免费 NuGet 下载 总下载量:36,374 查看许可证