gpt4 book ai didi

javascript - 尝试调整插入的图像大小时出错

转载 作者:行者123 更新时间:2023-11-29 21:20:08 32 4
gpt4 key购买 nike

背景

正在处理正在 word 中使用的任务 Pane 添加。我目前具有将图像插入 word 文档的功能,但是在处理较大的文档时,我的功能无法正确完成工作。它将图像放在文档的开头或结尾。

问题

我正在寻找让用户选择他们想要图像的位置并在那里插入图像的功能。这意味着在一个 10 页的 .docx 中,如果用户想要将图像放在第三页的两个段落之间,它就会放在那里;不在 .docx 的开头或结尾

重要

我目前正在使用一个函数,该函数允许我为要插入的图像提供高度和宽度。我需要能够给图像一个新的高度和宽度。

代码块 1 - 我现在正在使用

    function insertImageToDoc(base64, selectedContents) {
Word.run(function (context) {
var paragraphs = context.document.body.paragraphs;
context.load(paragraphs);
return context.sync().then(function () {
var paragraph = paragraphs.items[0];
var image = paragraph.insertInlinePictureFromBase64(base64, "start");
image.width = selectedContents.ImageWidth;
image.height = selectedContents.Imageheight;
return context.sync()
});
})
.catch(function (error) {
feedBackMessage("Image could not be inserted, please reload and try again");
});
}

代码块 1

此代码运行良好,但是在发生 b64 插入的情况下,我必须做的唯一选择是在“开始”或“结束”处插入。这就是用户当前在处理超过 1 页的文档时遇到给定问题的原因。

代码块 2

function insertImageToDoc(base64, selectedContents) {
Word.run(function (context) {
var range = context.document.getSelection();
context.load(range)
return context.sync().then(function () {
var image = range.insertInlinePictureFromBase64(base64, Word.InsertLocation.replace);
context.load(image);
return context.sync().then(function () {
image.width = selectedContents.ImageWidth;
image.height = selectedContents.Imageheight;
return context.sync()
})
});
})
.catch(function (error) {
feedBackMessage("Image could not be inserted, please reload and try again");
});
}

代码块 2

此 block 能够在任何给定位置插入图像,但我无法实际设置要插入的图像的大小。当我应用高度和宽度时它出错了。

代码块 2 错误

enter image description here

总结

我需要能够在任何给定位置插入图像,并且能够调整图像的高度和宽度。

最佳答案

好的,调试并尝试不同的方法后,我发现了导致错误的问题。 @Fei,关于它与 Office Web 应用程序一起使用是正确的。 郑重声明,之所以会出现问题,是因为在上传到 SharePoint 时图像尺寸是以英寸为单位而不是以像素为单位。这导致 office-js 给出错误消息并且没有调整大小来自 SharePoint 的维度。

例如:

enter image description here

如您所见,来自 SharePoint 的信息告诉我要添加应用 H =1050 和 W = 2445 尺寸到图像。以像素为单位应用这些尺寸会导致错误并阻止图像调整大小。这是有道理的。所以万恶之源在 Office-js api 之外。 这意味着我用作示例的两个代码块都可以正常工作。

关于javascript - 尝试调整插入的图像大小时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38749228/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com