C#将图像包含到Excel文件中的智能方式

时间:2012-05-03 12:13:14

标签: c# image export-to-excel

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

我面临两个问题:首先我没有找到添加图像,除非将临时副本保存到HD(我的图像来自存储在DB中的字节数组),然后我无法添加图片本身进入一个单元格,我必须计算我的WorkSheet上确切位置的确切位置。

这是我的代码

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);
}

有什么想法吗?

谢谢你们

1 个答案:

答案 0 :(得分:0)

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