如何在Word中将页码设置为从选定值开始
本文关键字:开始 设置 Word | 更新日期: 2023-09-27 18:23:59
我使用此代码在生成的Word文档中设置自动计数,它运行良好,但我需要从特定值开始计数,例如page_1-3、page_2-4、page_3-5等。
//define currentpage object
object currentPage = WdFieldType.wdFieldPage;
activeWindow.ActivePane.View.SeekView = WdSeekView.wdSeekCurrentPageFooter;
//set alignment
activeWindow.ActivePane.Selection.Paragraphs.Alignment = WdParagraphAlignment.wdAlignParagraphLeft;
//Add page number
activeWindow.Selection.Fields.Add(activeWindow.Selection.Range, ref currentPage, ref oMissing, ref oMissing);
在Word中,您可以通过"插入->页码->设置页码格式->起始位置"进行设置在C#中有等价的属性吗?
已解决我们所要做的就是设置这2个属性:
activeWindow.ActivePane.Selection.HeaderFooter.PageNumbers.RestartNumberingAtSection = true;
activeWindow.ActivePane.Selection.HeaderFooter.PageNumbers.StartingNumber = 666;
我所知道的在Word中找到一种方法的最好方法是录制一个宏,然后查看生成的代码。它是VB,但把它翻译成C#很容易。在Word2007中,如果我录制了一个宏,它改变了你所说的开始位置,我会得到以下宏-
Sub Macro1()
'
' Macro1 Macro
'
'
With Selection.Sections(1).Headers(1).PageNumbers
.NumberStyle = wdPageNumberStyleArabic
.HeadingLevelForChapter = 0
.IncludeChapterNumber = False
.ChapterPageSeparator = wdSeparatorHyphen
.RestartNumberingAtSection = True
.StartingNumber = 3
End With
End Sub
您只对更改StartingNumber属性感兴趣,并且将其转换为C#非常简单。