我需要实现一种方法来一键将页脚添加到由一行组成的 word 文档中。第一部分必须是文档的绝对路径,并且必须是左边界。除此之外,还必须有与右侧对齐的实际页码。
这在 Excel 上不是问题。在那里我可以使用 LeftFooter、CenterFooter、RightFooter。然而,在 Word 上没有可以访问的此类属性。
编辑:我发现了一个半工作的解决方案,其中有一些错误并且设计不正确,因为我还找不到合适的方法。
Word.Document doc = Globals.ThisAddIn.Application.ActiveDocument;
foreach (Word.Section wordSection in doc.Sections)
{
Word.Range PageNumberRange = wordSection.Range;
PageNumberRange.Fields.Add(PageNumberRange, Word.WdFieldType.wdFieldEmpty ,"PAGE Arabic ", true);
Word.Range footer = wordSection.Footers[Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].Range;
footer.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;
footer.Tables.Add(footer, 1, 3);
Word.Table tbl = footer.Tables[1];
tbl.Cell(1, 1).Range.Text = doc.FullName;
tbl.Cell(1, 3).Range.Text = PageNumberRange.Text;
/**/
footer.Font.ColorIndex = Word.WdColorIndex.wdBlack;
footer.Font.Size = 6;
PageNumberRange.Text = "";
这个问题是:它永远不会覆盖现有的页脚。如果它写“document1 ... 1”并且您再次单击它,因为您保存了文档,它不会更改页脚。此外:如果您有多个页面,则除第 1 页之外的所有页面都会被删除。
我从来没有想过要完成这么简单的任务会这么难。