在word文件的页脚中设置了起始页码为5后,总页数没有自动增加

您好,我在word文件(共3页)中设置了起始页码为5后,总页数没有自动增加,有没有办法通过Aspose.Words手动设置整个文件的总页数呢

@cqhg90258 NUMPAGES 字段返回文档的实际页数,页面起始号不影响其值。

如果我想NUMPAGES受起始页码的影响,有没有方法可以实现呢?

var fieldList = docSource.Range.Fields.Where(x => x.Type == FieldType.FieldNumPages);
var field=fieldList.First();
field.Result = "7"

这样设置了也没有效果

@cqhg90258 正如微软文档中提到的,您应该使用公式字段来实现这一点。下面是一个示例:

Document doc = new Document("input.docx");
DocumentBuilder builder = new DocumentBuilder(doc);

builder.MoveToHeaderFooter(HeaderFooterType.HeaderPrimary);
builder.Write("Total pages ");

int startNumber = 5;
Field formulaField = builder.InsertField(FieldType.FieldFormula, false);
builder.MoveTo(formulaField.Separator);
builder.InsertField(FieldType.FieldNumPages, false);
builder.Write($"+{startNumber}");

doc.UpdateFields();

doc.Save("output.docx");
1 Like