我正在尝试使用 Word JS API 将混合内容(文本 + 图像)插入到文档中。这在 Word 2016 中运行良好。
在 Word Online 中,也会插入内容,但随后会显示一条一般错误消息,指出必须重新启动 Word。重新加载后,插入的数据有时完好,有时文本或图像丢失。
这是我用来重现问题的代码:
Word.run(function (ctx) {
var selectedRange = ctx.document.getSelection();
selectedRange.insertText("test", "End");
selectedRange.insertInlinePictureFromBase64("iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMjCGJ1kDAAAATUlEQVQ4T8XLsQ3AMADDsPz/dDqIB7hTOArQee3+ZIs2s0Wb2aLNbNFmtmgzW7SZLdrMFm1mizazRZvZos1s0Wa2aDNbtJkt2sz2yDkfSZX9H3ywdoMAAAAASUVORK5CYII=", "End");
selectedRange.select("End");
return ctx.sync();
});
进一步观察:
- 仅当文档为空时才会出现错误
- 先插入图像,然后插入文本效果很好
最佳答案
这是 API 实现的错误,我们正在积极修复。正如您所说,您可以先插入图片,然后插入文本作为临时解决方法。
关于office-js - 在 insertText 之后使用 insertInlinePictureFromBase64 时需要重新启动 Word Online,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49155445/