我使用openxml-sdk创建了一个大的(大约1000页) word文档。当我第一次使用word应用程序打开它时,它会在statusbar中显示"Word正在重命名test.docx的页面“,并这样做大约15秒。我对这种行为做了一个德国截图。在此步骤之后,文档将被更改并需要保存。新版本的文件大小大约是原始文件的两倍。
第一次保存文档只需调用
document.SaveAs("someFilePath");
这种行为到底是什么?如何在(或在)创建文档programmatically之后重新编号页
发布于 2020-03-24 10:52:13
您不能在WordprocessingDocument
中重编号页面,因为这些页码不是存储在WordprocessingDocument
中,而是在布局或呈现文档时创建的。
典型的文档将页码定义为包含在FooterPart
(或可能的HeaderPart
)中的Open标记中的一个复杂字段。假设页面编号字段存储在FooterPart
中,在最简单的情况下,您的WordprocessingDocument
中可能有一个FooterPart
(例如,文档中有一个单独的部分)。即使您有多个FooterPart
,例如,因为您有多个部分,或者您对于第一个页面、奇数页和偶数页有一个不同的布局,您的文档中的FooterPart
相对较少(至少与您的1.000页相比)。
当Word呈现文档以供打印或查看时,它还根据您的FooterPart
(仍然使用我的示例)呈现页码。对于1.000页,这需要时间,因为Word不是为这么大的文档构建的。
如果您想做Word的工作并自己执行布局,您需要理解构建布局引擎是非常复杂的,并且需要付出很大的努力。
https://stackoverflow.com/questions/60827172
复制相似问题