【问题标题】:Office.js Excel - Issues with range.getImage()Office.js Excel - range.getImage() 的问题
【发布时间】:2020-04-24 18:37:25
【问题描述】:

rangeObject.GetImage() 在 Excel for Windows 中运行良好,部分适用于 Excel Online,并在 Excel for Mac 16.16.1 中返回倒置图像。

我使用 range.getImage() 来获取范围内确切内容的图片。然后将其用于其他 Office 应用程序。

  • 在 Excel for Windows(1806 版)中,它可以像我希望的那样完美运行。它获取范围内的任何内容,包括粘贴在范围内的单元格内容、图像、形状等。

  • 在 Excel Online 中,它只是获取单元格内容,包括文本, 边框、背景颜色和条件格式,但不是其他 粘贴在范围顶部的东西。

  • 在 Excel for Mac(版本 16.15)中,它只返回黑色图像(尺寸正确)。

  • 在 Excel for Mac(版本 16.16.1 和 16.18)中,它会返回一个颜色不正确(蓝色而不是黑色)的颠倒图像。它也没有在范围顶部插入形状/图像。

要在 Script Lab 中复制问题:选择包含一些内容的范围,然后运行以下代码:

$("#run").click(run);
function run() {
    Excel.run(function (ctx) {
        var rng = ctx.workbook.getSelectedRange();
        var image = rng.getImage();
        return ctx.sync().then(function () {
            var srcImage = "data:image/png;base64, " + image.value;
            $("#img").attr("src", srcImage);
        });
    }).catch(function (error) {
        console.log("Error: " + error);
        if (error instanceof OfficeExtension.Error) {
            console.log("Debug info: " + JSON.stringify(error.debugInfo));
        }
    });
}
<p class="ms-font-m">Shows the range image below</p>
<button id="run" class="ms-Button">
    <span class="ms-Button-label">Run code</span>
</button><br/>
<img id="img" src="" alt="" />

这是一个已知问题吗? method(API 1.7 中的新功能)是否会跨平台保持一致?如果有,什么时候?

这里也添加了:https://github.com/OfficeDev/office-js/issues/235

【问题讨论】:

    标签: excel office-js


    【解决方案1】:

    是的,这是一个已知问题。我们的团队已尝试修复此问题,但是代码没有签入,因为根据团队的调查,这不是错误级别的修复,它会导致其他潜在问题。 2585831 是我们正在跟踪的工作项。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多