0

我正在寻找一种使用 Office.Interop.Excel 将图像包含到 Excel 文件中的智能方法。基本上我想建立一个报告,我的专栏之一包含图像。

我面临两个问题:首先我没有找到添加图像,除非将临时副本保存到 HD 中(我的图像来自存储在数据库中的字节数组),然后我无法将图片本身添加到单元格中,我必须计算我的工作表上的确切位置,这不是很有效。

这是我的代码

using (MemoryStream stream = new MemoryStream(ByteArrayImage))
{
    Image image = Image.FromStream(stream);
    image.Save(directory + "\\Excel\\Temp\\image.png", ImageFormat.Png);
    xlWorkSheet.Shapes.AddPicture(directory + "\\Excel\\Temp\\image.png",
                 MsoTriState.msoFalse,MsoTriState.msoTrue,580, cumulHeight, 
                 image.Size.Width, image.Size.Height);
    cumulHeight += image.Size.Height + 10;
    SetRowHeight(xlWorkSheet, i + 2, image.Size.Height + 10);
}

有任何想法吗?

感谢你们

4

1 回答 1

0

甚至几周前我也遇到了同样的问题。我通过将图像绑定到gridview解决了这个问题。唯一的缺点是图像将在左上角有gridview列的名称。如果你愿意,我可以为你提供代码。虽然我的技术你不需要office.interop.excel。

于 2012-05-03T12:46:19.530 回答