让我简要介绍一下情况:
使用适当的屏幕截图说明了步骤:
步骤1 创建一个带有页眉和页脚详细信息的示例数据文档,如屏幕快照所示。
步骤– 2 获取以上.docx文件的Base64编码的文件字符串。
步骤– 3 我们创建了一个angular js 1.7和angular 6 Office JS加载项应用程序,该应用程序接受.docx base64编码的文件字符串并将该文件加载到MS Word中。 3.1 Angular 6 Office JS加载项应用程序如下:
3.2我们将步骤– 2中的base64编码文件字符串输入到由我们开发的自定义Word加载项中显示的文本框中。单击加载文件按钮后,我们的加载项将从base64编码的字符串加载实际文件。
3.3如下面的屏幕截图所示,页眉和页脚均消失,MS Word中仅加载了正文。
3.4在开发的自定义Word加载项中使用的Office JS API是context.Document.Body.insertFileFromBase64(,) Office JS API CDN:https://appsforoffice.microsoft.com/lib/1/hosted/Office.js
请对此提供帮助,因为我们在应用程序中处于生产问题的阻止状态。
答案 0 :(得分:2)
这是由于Word的工作方式所致。
页眉和页脚是 section-level 属性-它们链接到分节符。默认情况下,Word文档具有一个分节符,并且默认的页眉和页脚属于该分页符。
将文件插入到现有文档中后,将自动执行 操作,而无需最后一个默认的分节符(链接到最后一个段落标记)。传入的内容具有目标节的节属性。这样可以减少页眉和页脚。
可以的作用是在插入文档的末尾插入分节符,然后再插入该分节符,并确保为 that 部分定义了页眉和页脚。此额外的分节符将导入到现有文档中,并保留页眉和页脚。
如果应保留目标文档中现有的页眉和页脚,则事情将变得更加复杂。在这种情况下,目标文档中需要附加的分节符,以便“保留”那些页眉和页脚。根据插入的顺序,可能还需要附加的分节符,以确保页眉和页脚的内容彼此独立(默认情况下,将它们链接,以便每个后续节“继承”。
另一种方法是Office JS代码使用JS API提取页眉和页脚信息,并将其分别写入目标文档中。