如何将来自 link 而非图像文件的图片插入带有 Spreadsheet Light 的 Excel 电子表格?

How can I insert a picture into an Excel spreadsheet with Spreadsheet Light from a link rather than an image file?

使用 Spreadsheet Light 将图片添加到 sheet 很容易,如下所示:

SLPicture logoPic = new SLPicture(@"C:\Platypus\DuckbillsUnlimited.png");
logoPic.SetPosition(0, 13);
sl.InsertPicture(logoPic);

...但我想使用 URL 中的图像,而不是来自文件的图像。这是如何实现的?

我尝试在 SLPicture 的构造函数中直接使用图像 URL,但是不支持。您可以使用如下解决方法:

  1. 将图像文件下载到临时位置。
  2. 使用从临时位置下载的文件。

修改您的示例代码如下:

WebClient client = new WebClient();
client.DownloadFile(new Uri(url), @"C:\Platypus\DuckbillsUnlimited.png");

SLPicture pic = new SLPicture(@"C:\Platypus\DuckbillsUnlimited.png");
logoPic.SetPosition(0, 13);
sl.InsertPicture(logoPic);

不确定是否还有其他方法,但这绝对有效!!接受其他建议!