我可以使用c#从excel文件创建图像吗?

时间:2013-06-03 15:22:55

标签: c# image excel openxml

有没有办法在不使用office.interop dll的情况下拍摄excel文件的图像? 我成功地将一个excel文件嵌入到word文档中,但我需要在word文档上显示这个excel文件的图像。使用文件流,我可以使用open xml读取任何图像并嵌入到word文档中。休息的最后一件事是从excel文件创建图像。

1 个答案:

答案 0 :(得分:1)

SpreadsheetGear 2012 for .NET可以做到这一点:

using SpreadsheetGear;
...
// Open workbook (SpreadsheetGear supports both XLS and XLSX/XLSM file formats)
IWorkbook workbook = Factory.GetWorkbook(@"C:\path\to\workbook.xlsx");
IWorksheet worksheet = workbook.Worksheets["Sheet1"];

// Create Image class, passing in desired range to render 
SpreadsheetGear.Drawing.Image image = new SpreadsheetGear.Drawing.Image(worksheet.Cells["A1:D10"]);

// Create Bitmap of range
System.Drawing.Bitmap bitmap = image.GetBitmap();

// ... Insert into Word ...

如果您希望渲染这些对象的图像,Image类还会接受IShapeIChart个对象。一旦你有了System.Drawing.Bitmap,你就可以随心所欲地做任何事情,包括插入Word文档。您可以在Excel Chart and Range Imaging Samples页面上找到其他示例。

免责声明:我为SpreadsheetGear工作。