c# - 在c#中删除word文档中的页眉和页脚
问题描述
请帮助从word文档中删除页眉和页脚并更改字体并保存文档。
这是我的代码仅用于更改字体。
var application = new Microsoft.Office.Interop.Word.Application();
var doc = application.Documents.Open("word doc file here");
object start = doc.Content.Start;
object end = doc.Content.End;
Word.Range rng = doc.Range(ref start, ref end);
rng.Font.Name = "Times New Roman";
rng.Select();
doc.Save();
doc.Close();
解决方案
我假设您向我们展示的代码在更改字体和保存文档方面对您有用。
以下代码段显示了更改字体的两种替代方法。我使用字体颜色使事情更明显。第一个更改了您在 Word 中可以找到的大多数字体格式的基本样式;第二个基本上就是你所拥有的 - 应用格式,就像你选择文档的正文并格式化它一样。我的代码的不同之处在于它使用Document.Content
它返回Range
文档的主体,而无需指定开始和结束值。
该片段还演示了如何访问文档的默认页眉和页脚。请注意,Word 文档可能非常复杂,包含多个Section
对象,并且每个部分对象可以有一个“正常”的页眉和页脚,以及第一页的可选页眉和页脚。此片段假定文档只有一个部分,第一页没有不同。
Word.HeaderFooter hdr = doc.Sections[1].Headers[Word.WdHeaderFooterIndex.wdHeaderFooterPrimary];
hdr.Range.Delete();
Word.HeaderFooter ftr = doc.Sections[1].Footers[Word.WdHeaderFooterIndex.wdHeaderFooterPrimary];
ftr.Range.Delete();
doc.Styles[Word.WdBuiltinStyle.wdStyleNormal].Font.ColorIndex = Word.WdColorIndex.wdBlue;
doc.Content.Font.ColorIndex = Word.WdColorIndex.wdDarkRed;
推荐阅读
- perl - 如何在匹配之前和之后替换字符
- three.js - THREE.js 无法导入模块
- c++ - 为什么 memory_order_release 支持直到 C++20?
- python - seleniumpython 下拉列表 div
- angular - Angular HttpClient 不发送 gettter 提供的属性
- php - 维护模式 - 使用 IP 以外的其他方式进行授权
- kubernetes - 如何在 Kubernetes 中使用服务 IP 地址而不是 POD IP 地址
- reactjs - 如何在 React 中显示存储在变量中的组件
- intellij-idea - 离题自动完成建议
- javascript - 我需要在 Angular 中更改我的数组元素的样式