🎨 Add page number generation and refine the methodology
This commit is contained in:
@@ -683,3 +683,42 @@ func (d *Document) AddFooterWithReference(footerType string) *Footer {
|
||||
|
||||
return footer
|
||||
}
|
||||
|
||||
// AddPageNumberParagraph 添加一个居中的页码段落
|
||||
func (d *Document) AddPageNumberParagraph() *Paragraph {
|
||||
// 创建一个新段落
|
||||
para := d.AddParagraph()
|
||||
para.SetAlignment("center")
|
||||
|
||||
// 添加"第"文本
|
||||
para.AddRun().AddText("第 ")
|
||||
|
||||
// 创建页码域的所有部分
|
||||
// 1. 域开始
|
||||
fieldBegin := para.AddRun()
|
||||
fieldBegin.Field = &Field{
|
||||
Type: "begin",
|
||||
Code: "PAGE",
|
||||
}
|
||||
|
||||
// 2. 域分隔符
|
||||
fieldSeparate := para.AddRun()
|
||||
fieldSeparate.Field = &Field{
|
||||
Type: "separate",
|
||||
}
|
||||
|
||||
// 3. 页码内容(在Word中会替换为实际页码)
|
||||
fieldContent := para.AddRun()
|
||||
fieldContent.AddText("1")
|
||||
|
||||
// 4. 域结束
|
||||
fieldEnd := para.AddRun()
|
||||
fieldEnd.Field = &Field{
|
||||
Type: "end",
|
||||
}
|
||||
|
||||
// 添加"页"文本
|
||||
para.AddRun().AddText(" 页")
|
||||
|
||||
return para
|
||||
}
|
||||
|
Reference in New Issue
Block a user