IronWord 操作指南 添加图像 如何在 C# 中向 DOCX 添加图像 Ahmad Sohail 已更新:2026年1月10日 下载 IronWord NuGet 下载 免费试用 法学硕士副本 法学硕士副本 将页面复制为 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 提供了 ImageContent 类,用于在 DOCX 文件中插入图像(.jpg、.png、.bmp、.tiff、.gif),并可自定义宽度、高度和文本封装等属性。 使用 IronWord 将图像添加到 Word 文档中,实现文档自动化和报告生成。 as-heading:2(快速入门:在 C# 中为 DOCX 添加图像) 1.通过 NuGet 软件包管理器安装 IronWord 2.创建一个新的 WordDocument 实例 3.使用 ImageContent 类加载图片 4.使用 AddImage() 将图像添加到文档中 5.将文档保存为 DOCX 立即开始使用 NuGet 创建 PDF 文件: 使用 NuGet 包管理器安装 IronWord PM > Install-Package IronWord 复制并运行这段代码。 using IronWord; using IronWord.Models; // Create new document WordDocument doc = new WordDocument(); // Add image ImageContent image = new ImageContent("photo.jpg"); doc.AddImage(image); // Save document doc.SaveAs("document-with-image.docx"); 部署到您的生产环境中进行测试 立即开始在您的项目中使用 IronWord,免费试用! 免费试用30天 试用 IronWord ## 如何在 DOCX 中添加图片 下载最新稳定版 IronWord 初始化一个新的 Word 文档 定义图像对象(.bmp、.jpg、.png 或其他支持的格式) 将图片添加到文档中 保存并导出文档文件 如何在 DOCX 中添加图片? 使用文件路径引用图片。 首先,以字符串文件路径实例化 ImageContent 类。 在整个文件中使用 image 变量来修改宽度和高度等属性。 使用 AddImage() 函数将图像添加到 .docx 文件中。 导出文档并保存在本地。 下面的示例在文档中添加了一张图片,但没有任何父节点。 支持的文件格式包括 .jpg、.png、.bmp、.tiff 和 .gif。 这种灵活性使您可以使用任何常见的图像格式。 提示将图像作为子元素插入段落中,以改善文档层次结构。 该段定义了文本换行和其他文本格式属性。 这种方法可以更好地控制图片的位置,并使图片与周围的文字保持流畅 :path=/static-assets/word/content-code-examples/how-to/add-image-insert-image.cs using IronWord; using IronWord.Models; using IronWord.Models.Enums; // initializing docx file WordDocument doc = new IronWord.WordDocument(); // instantiating image file IronWord.Models.ImageContent image = new IronWord.Models.ImageContent("sample-image.jpg"); // modifying image properties image.Width = 200; image.Height = 200; // AddImage function saving the image doc.AddImage(image); // Save and export the file doc.SaveAs("inserted-image.docx"); Imports IronWord Imports IronWord.Models Imports IronWord.Models.Enums ' Initializing docx file Dim doc As New IronWord.WordDocument() ' Instantiating image file Dim image As New IronWord.Models.ImageContent("sample-image.jpg") ' Modifying image properties image.Width = 200 image.Height = 200 ' AddImage function saving the image doc.AddImage(image) ' Save and export the file doc.SaveAs("inserted-image.docx") $vbLabelText $csharpLabel 支持哪些图像格式? 支持的文件格式:.jpg、.png、.bmp、.tiff 和 .gif。 每种格式在插入时都要保持其质量。 JPEG 最适用于照片。PNG 支持徽标和图形的透明度。 BMP 可提供未压缩的质量。 TIFF 适合高质量的打印文档。 GIF 允许使用简单的动画(在静态文档中只显示第一帧)。 图像在文档中的位置? 图片默认添加在当前光标位置,不包含任何父节点。 为了精确定位,在段落中插入图片作为子元素。这样可以更好地控制文本流,并将图片与文档结构融为一体。 为什么使用 ImageContent 类? ImageContent 类以结构化的方式管理图像属性。 插入前修改尺寸、定位和格式。 这种方法可确保文档生成流程的一致性,并在整个应用程序中应用标准格式规则。 该类封装了所有与图像相关的属性,使代码更易于维护并减少格式错误。 如何通过流添加图片? 使用前一种方法很容易添加本地或静态 URL 图像。 然而,应用程序通常使用数据库、网络服务或动态生成内容中的图像。 使用 Stream 方法在需要身份验证的安全 API 后面添加图像。 下面的示例显示了 HTTP 客户端发送授权令牌以检索经过验证的图像流。 语流在导出前直接集成到文档中。 这种方法消除了临时文件存储,提高了敏感图像数据的安全性。 :path=/static-assets/word/content-code-examples/how-to/add-image-insert-image-via-http-stream.cs using IronWord; using IronWord.Models; using IronWord.Models.Enums; // initializing docx file WordDocument doc = new IronWord.WordDocument(); using (HttpClient client = new HttpClient()) { // Add authentication headers client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY_HERE"); client.DefaultRequestHeaders.Add("User-Agent", "MyApp/1.0"); // Get image from authenticated endpoint Stream authenticatedStream = client.GetStreamAsync("https://api.example.com/secure/image.png"); doc.AddImage(authenticatedStream); } // Export docx doc.SaveAs("added-image-via-http-stream.docx"); Imports IronWord Imports IronWord.Models Imports IronWord.Models.Enums Imports System.Net.Http ' Initializing docx file Dim doc As New IronWord.WordDocument() Using client As New HttpClient() ' Add authentication headers client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY_HERE") client.DefaultRequestHeaders.Add("User-Agent", "MyApp/1.0") ' Get image from authenticated endpoint Dim authenticatedStream As Stream = client.GetStreamAsync("https://api.example.com/secure/image.png").Result doc.AddImage(authenticatedStream) End Using ' Export docx doc.SaveAs("added-image-via-http-stream.docx") $vbLabelText $csharpLabel 何时应使用流方法? 在以下情况下使用 Stream 方法: 图片位于需要身份验证的安全 API 后面 从内存动态处理图像 处理数据库中作为二进制数据存储的图像 在企业应用中,图像存储在文档管理系统、云存储中,或由图像处理服务生成,这种方法非常适用。 流加载有哪些优点? 流加载集成了来自认证端点的图像,无需保存临时文件。 这样可以提高安全性和性能。 福利包括: 减少磁盘 I/O 操作 磁盘上无敏感图像缓存 实时图像处理工作流程 更好地管理大型图像的内存 灵活的图像源选项 如何修改图像属性? <! -- 待办事项:在此处添加图片 --> <! --! 修改图像属性实现示意图 --> <!--说明:说明代码概念的图表或截图 --> IronWord 提供了自定义图像属性的综合方法。 在将图片添加到文档之前或之后调整这些属性。 设置 说明 范例 Width 图片的水平尺寸(像素 `image.Width = 500;` Height 图片的垂直尺寸(像素 `image.Height = 300;` 包文本 图像周围的文字包装行为 `image.包文本 = 包文本.Square;` 左侧距离 从左边缘开始的间距测量,单位为像素 `image.左侧距离 = 10;` 距离 以像素为单位从右边开始测量间距 `image.距离 = 10;` 距离顶部 从上边缘开始的间距测量,单位为像素 `image.距离顶部 = 15;` 距离底部 以像素为单位从底边开始测量间距 `image.距离底部 = 15;` 职位 空间位置信息(X 和 Y 坐标) `image.职位 = new Element职位(50, 100);` 规模 X 轴和 Y 轴的比例大小系数 `image.规模 = new PointF(1.5f, 1.5f);` 翻译 用于重新定位的位移坐标 `image.翻译 = new PointF(20, 30);` 如何自定义宽度和高度? 通过改变宽高比实现自定义宽度和高度。 控制图像在文档中的显示方式,无论是保持比例还是适应特定的布局限制。 :path=/static-assets/word/content-code-examples/how-to/add-image-custom-size.cs using IronWord; using IronWord.Models; using IronWord.Models.Enums; // initializing docx file WordDocument doc = new IronWord.WordDocument(); // instantiating image file IronWord.Models.ImageContent image = new IronWord.Models.ImageContent("sample-image.tiff"); // modifying the aspect ratio by introducing custom width image.Width = 800; image.Height = 200; // AddImage function saving the image doc.AddImage(image); // Save and export the file doc.SaveAs("custom-size-image.docx"); Imports IronWord Imports IronWord.Models Imports IronWord.Models.Enums ' initializing docx file Dim doc As New IronWord.WordDocument() ' instantiating image file Dim image As New IronWord.Models.ImageContent("sample-image.tiff") ' modifying the aspect ratio by introducing custom width image.Width = 800 image.Height = 200 ' AddImage function saving the image doc.AddImage(image) ' Save and export the file doc.SaveAs("custom-size-image.docx") $vbLabelText $csharpLabel 高宽比会发生什么变化? 自定义宽度和高度值将覆盖原始宽高比。 拉伸或压缩图片,以适应标题、侧边栏或固定大小容器等布局要求。 极度失真会显得不专业。 为了在调整大小时保持长宽比,请根据目标尺寸计算比例尺寸。 我应该先设置哪些属性? 按以下顺序设置属性: 1.尺寸(宽/高)--图像布局的基础 2.定位(DistanceFrom 属性)--控制间距和边距 3.高级属性(缩放/翻译)--微调 这种方法可确保每个属性都在前一个属性的基础上进行逻辑构建。 某些属性会相互作用--文本包装会影响距离属性的工作方式。 常见问题解答 如何用 C# 在 DOCX 文件中添加图片? 使用 IronWord,您可以通过创建一个带有图片文件路径的 ImageContent 实例,然后使用 AddImage() 方法将图片添加到 DOCX 文件中。IronWord 支持 JPG、PNG、BMP、TIFF 和 GIF 等常见格式,因此可以轻松地以编程方式在 Word 文档中插入图片。 在 Word 文档中添加图片时支持哪些图片格式? IronWord 支持所有主流图像格式,包括 .jpg、.png、.bmp、.tiff 和 .gif 文件。每种格式在插入时都能保持其质量--JPEG 适用于照片,PNG 适用于透明图形,BMP 适用于未压缩质量,TIFF 适用于高质量打印文档,GIF 适用于简单动画(只显示第一帧)。 能否控制 DOCX 文件中图片的大小和位置? 是的,IronWord 的 ImageContent 类允许您自定义宽度、高度和文本封装等图像属性。您可以在插入前修改尺寸和定位,从而完全控制图片在 Word 文档中的显示效果。 如何在段落中插入图片以改善文档结构? IronWord 允许您将图片作为子元素插入段落中,从而提供更好的文档层次结构和对文本包装的控制。与添加无父节点的图像相比,这种方法将图像与周围的文本流整合在一起,并为您提供更精确的定位选项。 以编程方式在 Word 文档中添加图片的最快方法是什么? 使用 IronWord 的最快方法是创建一个 WordDocument 实例,使用 new ImageContent('photo.jpg') 加载图片,调用 doc.AddImage(image),然后使用 doc.SaveAs('document-with-image.docx') 保存。这个简单的四步流程处理了整个图片插入工作流程。 Ahmad Sohail 立即与工程团队聊天 全栈开发者 Ahmad 是一名全栈开发人员,拥有扎实的 C#、Python 和 Web 技术基础。他对构建可扩展的软件解决方案深感兴趣,并喜欢探索设计和功能在实际应用中如何结合。在加入 Iron Software 团队之前,Ahmad 致力于自动化项目和 API 集成,专注于提高性能和开发人员体验。在业余时间,他喜欢尝试 UI/UX 想法,贡献开源工具,并偶尔从事技术写作和文档工作,以便让复杂主题更易于理解。 准备开始了吗? Nuget 下载 32,629 | 版本: 2026.2 刚刚发布 免费 NuGet 下载 总下载量:32,629 查看许可证