如何将在Epplus中创建的图表导出到图像文件

时间:2019-02-15 08:21:31

标签: c# xlsx epplus

我尝试过

var excelPicture = sheet.Drawings[0] as OfficeOpenXml.Drawing.ExcelPicture;
var img = excelPicture.Image;

,但是excelPicture变量变为空。我如何从ExcelDrawing创建图像文件?

1 个答案:

答案 0 :(得分:2)

看来这不能通过EPPlus API来完成。 GitHub项目存储库how export the drawings to a file中存在未解决的问题。但是问题中提供的solution无效(似乎@Onchomngebul自己写了评论)

另一种解决方案是在Spire.XLS nuget-package中使用Workbook类(或通过免费版本FreeSpire.XLS)。

var workbook = new Workbook();
workbook.LoadFromFile(workbookFileName, ExcelVersion.Version2010);
var sheet = workbook.Worksheets[0]; // index or name of your worksheet
var image = workbook.SaveChartAsImage(sheet, 0); // chart index
img.Save(chartFileName, ImageFormat.Png);

有关更多详细信息,请参阅本期comment

另一种解决方案是尝试使用Excel.ChartObject。我认为这个问题Exporting Excel Charts as Images可能会对您有所帮助。