Word控件Spire.Doc 【图像形状】教程(4) 用 C# 中的文本替换 Word 中的图像
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转换和打印Word/PDF/Excel等格式文件处理,小巧便捷。在 C#、VB.NET 中从 Word 中提取图像。
Spire.Doc for.NET 最新下载(767755948)https://www.evget.com/product/3368/download
让我们看看 Spire.Doc 是如何帮助开发人员解决与 Office 技术编程相关的问题。根据描述,发帖人希望将Word文件中的每张图片对应替换为“Here was image {image index}”。但是,我们想提供一个带有以下示例代码的解决方案。
测试文件:
用文本替换图像的代码片段;
第 1 步:创建一个新的 Word 文档并加载测试文件。
Document document = new Document(@"..\..\test.docx");
第 2 步:获取Word文档中的所有图片并将它们替换为文本“Here was image {image index}”。
int j = 1; foreach (Section sec in document.Sections) { foreach (Paragraph para in sec.Paragraphs) { List pictures = new List(); foreach (DocumentObject docObj in para.ChildObjects) { if (docObj.DocumentObjectType == DocumentObjectType.Picture) { pictures.Add(docObj); } } foreach (DocumentObject pic in pictures) { int index = para.ChildObjects.IndexOf(pic); TextRange range = new TextRange(document); range.Text = string.Format("Here was image {0}", j); para.ChildObjects.Insert(index, range); para.ChildObjects.Remove(pic); j++; } } }
第 3 步:保存并启动文件。
document.SaveToFile(@"..\..\result.docx", FileFormat.Docx); System.Diagnostics.Process.Start(@"..\..\result.docx");
结果:
完整的 C# 代码:
[C#]
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; using Spire.Doc.Interface; using System.Drawing;namespace ReplaceImageWithText { class Program { static void Main(string[] args) { Document document = new Document(@"..\..\test.docx"); int j = 1; foreach (Section sec in document.Sections) { foreach (Paragraph para in sec.Paragraphs) { List pictures = new List(); foreach (DocumentObject docObj in para.ChildObjects) { if (docObj.DocumentObjectType == DocumentObjectType.Picture) { pictures.Add(docObj); } } foreach (DocumentObject pic in pictures) { int index = para.ChildObjects.IndexOf(pic); TextRange range = new TextRange(document); range.Text = string.Format("Here was image {0}", j); para.ChildObjects.Insert(index, range); para.ChildObjects.Remove(pic); j++; } } } document.SaveToFile(@"..\..\result.docx", FileFormat.Docx); System.Diagnostics.Process.Start(@"..\..\result.docx"); } } }
以上便是如何在 C#/VB.NET 中的指定位置插入图像,如果您有其他问题也可以继续浏览本系列文章,获取相关教程,你还可以给我留言或者加入我们的官方技术交流群。
Word控件Spire.Doc 【图像形状】教程(4) 用 C# 中的文本替换 Word 中的图像相关推荐
- Word控件Spire.Doc 【图像形状】教程(8): 如何借助C#/VB.NET在 Word 中插入艺术字
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...
- Word控件Spire.Doc 【图像形状】教程(2) ;在 C#、VB.NET 中从 Word 中提取图像
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...
- Word控件Spire.Doc 转换教程(十八): 将 RTF 转换为图像并重置图像分辨率
Spire.Doc具有在 C# 和 VB.NET 中操作 RTF 文件格式的强大能力.通过使用 Spire.Doc,开发人员可以将 RTF 转换为 PDF.HTML和 .doc..docx 格式的 w ...
- Word控件Spire.Doc 【页面背景】教程(9) ;C#/VB.NET:从 Word 文档中删除文本或图像水印
可以将水印添加到 Word 文档中,以告知其他人文档的所有权或状态.有时,您可能希望删除 Word 文档中的现有水印.本文将演示如何使用Spire.Doc for .NET从 C# 和 VB.NET ...
- Word控件Spire.Doc 【文本】教程(14) ;如何用图片替换Word中的文字
在 Spire.Doc 的教程部分,我们介绍了"用 C# 中的表格替换 Word 中的文本"和"用 C# 中的文本替换 Word 中的图像"的简单方法.有时,我 ...
- Word控件Spire.Doc 【页眉页脚】教程(4): 从C#中的word文档中删除标题
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...
- Word控件Spire.Doc 【超链接】教程(4):如何修改Word文档中的超文本
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...
- Word控件Spire.Doc 【书签】教程(1):在C#/VB.NET:在 Word 中插入书签
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...
- Word控件Spire.Doc 【书签】教程(4): 使如何在 DOCX 到 PDF 转换中保留书签
Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Micr ...
- Word控件Spire.Doc 【Table】教程(7): 如何在C#中用表格替换word文档中的文本
Spire.Doc for .NET 是一款专门对 Word 文档进行操作的 .NET 类库.在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建.编辑.转换和打印 Mic ...
最新文章
- JTable表头排序后,row获取错乱的问题解决
- jvm性能调优实战 -51修复栈内存区域内存溢出问题 StackOverFlow
- Linux 内核链表 【转】
- python接口自动化用例管理_python接口自动化测试(六)-unittest-单个用例管理
- WEB-INF 目录下的文件无法直接浏览器访问
- c语言蓝色字体,C 语言输出不同颜色字体
- Warning: Data truncated for column #39;AirPress#39; at row 1
- ARM开发经典学习网站推荐【转】
- java redo_redo和undo区别讨论
- jeecms 取附件
- 晚上思考人生千条路,白天走原路
- 深入理解计算机系统第四章(4.55-4.58)
- Mac Excel快捷键
- 耐心排序之最长递增子序列(LIS)
- java实现图片反色
- 【博弈】叉圈棋永远都是平局
- RSA的非对称加密,公钥加密私钥解密,本地测试
- 2020-08-17:为什么HashMap中数组的容量为2的次幂?
- Redmi11T Pro +值不值得买 Redmi11T Pro +配置如何
- 应对项目严重滞后4大有效补救方法