【发布时间】:2018-09-11 11:29:10
【问题描述】:
我遇到了 Excel javascript API 的 Chart.getImage() 方法的问题。 与从 VBA 生成的图像不同,来自 javascript API 的图像显示的图表未与图像边界正确对齐。
我仅在 Windows 10 上的 Excel 客户端版本 16.0.6965.2117 上进行了测试,并且在 Windows 上以 175% 的缩放比例启用了高 DPI。事情在 100% 时变得更好,但生成的图像仍然不是像素完美的。
这里有一个代码 sn-p 来演示这个问题。如果图表在图像边界上对齐,则红色不应显示在图表周围,因为剩余空间已被透明度填充。
Office.initialize = function (reason) {
$(document).ready(function () {
Excel.run(function (ctx) {
var worksheet = ctx.workbook.worksheets.getActiveWorksheet();
var chart = worksheet.charts.getItemAt(0).load();
var chartImgStream = null;
return ctx.sync()
.then(function () {
chartImgStream = chart.getImage();
})
.then(ctx.sync)
.then(function () {
$('#content-main').html('<img src="data:image/png;base64,'+chartImgStream.value+'" style="background-color: red;" />');
});
});
});
}
是否有人对此方法在其他平台上的行为有反馈意见?
【问题讨论】:
-
我们将测试此问题并返回。谢谢。