我正在尝试使用以下方法将图像插入到 word 文档中:
bodyObject.insertInlinePictureFromBase64
,但我得到了该方法未定义的错误。然而,这里列举的其余方法似乎都可用,只有这一种缺失。如果这个真的不可用,我正在寻找一些许可?如果它确实目前不可用,那么它会在不久的将来可用吗?
问问题
1011 次
2 回答
2
这是一个很好的问题,奥斯卡感谢您提出。我很确定您看到此问题的原因是因为在 Word 版本中您使用的 Word 1.2 要求集可能不受支持,您需要更新 Word。为了检查这一点,请转到文件-> 帐户并确保您的版本是 6568+(检查下图)。如果您没有 6568.xxxx+,请务必更新您的 Office。
现在,为了安全地使用此方法,您需要确保在运行时执行加载项的主机是否确实支持 1.2 要求集,并且可以通过“isSetSupported”方法轻松检查。看这个例子:
if (Office.context.requirements.isSetSupported("WordApi", "1.2")) {
Word.run(function (context){
var myBase64File = getDocumentAsBase64(); // assumes gets a docx file as base64
context.document.body.insertFileFromBase64(myBase64File, "end");
return context.sync();
})
.catch(function (myError) {
//otherwise we handle the exception here!
app.showNotification("Error", myError.message);
}) }
else {
//if you reach this code it means that the Word executing this code does not yet support the 1.2 requirement set. in this case you can also insert a paragraph and then insert the document on the paragraph.
app.showNotification("Error. This functionality requires Word with at least January update!! (check builds 6568+)");
}
最后要检查每个需求集支持哪些 API,请参阅此页面
我希望你觉得这篇文章很有帮助。
于 2016-03-07T18:01:54.973 回答
1
...我也刚刚注意到您说要插入图像。insertFileFromBase64 方法旨在插入整个 Word 文档。(即 docx 文件)如果要插入图像,则需要使用 Body.insertInlinePictureFromBase64(base64EncodedImage, insertLocation) 方法。 转到此处以供参考 ,这也是 1.2 要求集的一部分。
于 2016-03-07T18:20:23.480 回答