Javascript 是否可以使用Office 2013 Office api插入base64字文件

Javascript 是否可以使用Office 2013 Office api插入base64字文件,javascript,office-js,Javascript,Office Js,我有一个成功运行的脚本,可以从SharePoint加载Word文件并将其插入Word 2017(Office 365 Word本地客户端,非联机) 当前脚本使用Ajax读取文件,提取base64文件并使用 body.insertFileFromBase64(myBase64,end) 我现在需要扩展该功能以支持Word 2013(即使用Office.js而不是Word JavaScript api)。所以代码改为 Office.context.document.setSelectedDataAs

我有一个成功运行的脚本,可以从SharePoint加载Word文件并将其插入Word 2017(Office 365 Word本地客户端,非联机) 当前脚本使用Ajax读取文件,提取base64文件并使用

body.insertFileFromBase64(myBase64,end)

我现在需要扩展该功能以支持Word 2013(即使用Office.js而不是Word JavaScript api)。所以代码改为

Office.context.document.setSelectedDataAsync(文件,someImportionType)

我希望能够使用

Office.context.document.setSelectedDataAsync(myBase64,{胁迫类型:Office.胁迫类型.Ooxml},函数(

但是我返回了一个错误“指定数据对象的格式无效”,这是正确的,因为Office API假定base64文件是图像

是否可以将Base64文件转换为JavaScript格式的XML?(在我的代码中的其他地方,我解压缩docx并提取书签,但仅从document.XML中提取,docx.XML缺少所有格式和图像、页脚等。)

是一种简单的二进制编码,完全不知道底层的内容类型。因此,如果您的源内容是OOXML,解码它将返回OOXML。您不能做的是类型转换。例如,Base64编码的JPEG不能直接解码为BMP。要做到这一点,您需要先解码,然后转换为f使用其他工具从JPEG格式到BMP格式

如果您试图操纵或提取现有文档的内容,您可能需要查看。Aspose提供了一些工具,允许您以编程方式使用Word文档(它们也有类似的工具用于其他文件类型)。使用此选项,您可以提取您要查找的OOXML,然后使用将其插入Word

目前,唯一接受Base64编码内容的强制类型是。

只是一种二进制编码,并且完全不知道底层的内容类型。因此,如果您的源内容是OOXML,解码它将返回OOXML。您不能做的是类型转换。例如,Base64编码的JPEG无法解码直接转换成BMP。要做到这一点,您需要首先解码,然后使用其他工具从JPEG转换成BMP

如果您试图操纵或提取现有文档的内容,您可能需要查看。Aspose提供了一些工具,允许您以编程方式使用Word文档(它们也有类似的工具用于其他文件类型)。使用此选项,您可以提取您要查找的OOXML,然后使用将其插入Word

目前,唯一接受Base64编码内容的强制类型是