从 Excel 将图表作为图像插入 Word 文档

Insert chart as image into Word document from Excel

我有一个 Word 加载项,我希望用户在其中输入 Excel 文件(位于网络驱动器某处)的路径,从 Excel 读取所有图表文件,显示所有图表的小摘要,然后让用户 select 将其作为图像插入到文档中。

类似于此处的示例,除了我不希望 Excel 文件托管在 OneDrive 上(只是一个本地目录)并且我在纯 JS/HTML 中执行此操作,不 ASP.NET: https://github.com/OfficeDev/PowerPoint-Add-in-Microsoft-Graph-ASPNET-InsertChart

我正在努力处理第一部分,从 Word 访问 Excel 文件。我怎么做?根据 2016 年 10 月的 post ,将来可能会添加。有关于此的任何消息还是通过 OneDrive 进行静止的唯一方法?

一旦我可以打开 Excel 并访问其在 Javascript 中的内容,我认为这很简单,例如:

获取所有图表

var charts = ctx.workbook.worksheets.getActiveWorksheet().charts.load("name");

将它们转换为图像

chartObject.getImage(height, width, fittingMode);

当用户 select 的时候,我只是将它插入到文档中 selection 处。

恐怕答案还是一样。目前,无法打开使用 Office-JS APIs 在本地托管的 Excel 文件。我们正在努力为 OneDrive 消费者平台启用 Excel REST API。因此,如果您在 PC 上安装了 OneDrive 同步客户端,则可以从 OneDrive 无缝访问 Excel 文件并向其访问 read/write,该文件将同步到本地驱动器。这确实意味着您需要通过网络连接来读取 Excel 文件。

您还可以查看 Open XML SDK 以构建完全本地化的解决方案。对于像获取一些数据这样的简单场景来说,它有点笨重。 Excel 如果您不介意通过网络访问,REST API 是此类场景的理想选择。