使用Aspose.Cells来实现Excel图表转换成图像

原创|其它|编辑:郝浩|2011-09-09 13:54:38.000|阅读 3220 次

概述:本篇文章旨在为开发者提供一个详细的参考,了解如何将一个Excel图表导出为图像。

  本篇文章旨在为开发者提供一个详细的参考,了解如何将一个Excel图表导出为图像。

  通过图表展示数据能提供视觉上的吸引力,是用户能够更容易地看见数据对比,模式和趋势。例如,通过图表,你不仅可以分析工作表中的几列数据,你还可以一眼就看出销售额是下降还是上涨,以及实际销售额和预计销售额的比较。

  有时候,你的确非常需要在你的应用程序和网页中呈现图表。你还可能需要在Word文档,PDF文档,Power Point演示中插入图表。只要你想把图表渲染成图像,你只需要轻松地将图像粘贴到你的应用程序中。

  要将Excel图表导出为图像,也可以使用Office Automation(办公自动化),但是Office Automation(办公自动化)有其自身的缺点。有几个原因和涉及的问题:安全性,稳定性,可扩展性/速度,价格,功能等等。

  根据上述,使用Aspose.Cells来完成Excel图表转换成图像,便是一个再好不过的选择了。因此,在本文在中,我们将在Visual Studio.Net中创建一些控制台应用程序,通过Aspose.Cells API,只需要少量简单的代码便可实现Excel图表转换为图像文件。

  Aspose.Cells是什么?

  Aspose.Cells是一个广受赞誉的Spreadsheet组件,用户能无需依靠Microsoft Excel即可为其应用程序嵌入读写和处理Excel数据表格的功能。Aspose.Cells能在极细微的层面上到处数据以及格式化电子表格,导入图像,导入图表,创建图表,应用以及计算复杂的公式,流式接收Excel数据,以多种格式保存等---完成所有的这一切功能都无需使用Microsoft Excel 和Microsoft Office Automation。

  执行任务

  为了演示,我在这里选择一些常见的任务。我在MS Excel中创建两个图表(饼图和柱形图),通过使用Aspose.Cells API,仅几行代码便完成了MS Excel图表到图像的转换。

  任务列表:

  * 将饼图转换成图像文件

  * 将柱形图转换成图像文件

饼图转换成图像文件

  首先,需要在MS Excel中创建饼图,然后将饼图转换成图像文件。

  在MS Excel中创建饼图

  MS Excel中打开一个新的工作薄,在不同区域中输入一些销售数据。然后,便创建 一个基于销售数据的饼图,并保存Excel文件。

  以下便是MS Excel中创建的文件截图:

  创建一个项目

  启动Visual Studio.NET并创建一个新的控制台应用程序。这个例子将显示一个C#控制台应用程序,但你也可以使用VB.NET。

  添加引用

  该项目将使用Aspose.Cells,所以你需要添加引用到项目的Aspose.Cells中,例如,添加一个引用到... ...\ PROGRAM FILES \ Aspose\ Aspose.Cells\ BIN\ Net1.0\ Aspose.Cells.dll

  代码片段

  [C#]


  //Create a new workbook.

  //Open the existing excel file which contains the pie chart.

  Workbook workbook = new Workbook("d:\\piechart.xls");

  //Get the designer chart (first chart) in the first worksheet.

  //of the workbook.

  Aspose.Cells.Charts.Chart chart = workbook.Worksheets[0].Charts[0];

  //Convert the chart to an image file.

  chart.ToImage(@"d:\PieChart.emf", System.Drawing.Imaging.ImageFormat.Emf);

  [VB]


  'Create a new workbook.

  'Open the existing excel file which contains the pie chart.

  Dim workbook As Workbook = New Workbook("d:\piechart.xls")

  'Get the designer chart (first chart) in the first worksheet.

  'of the workbook.

  Dim chart As Aspose.Cells.Charts.Chart = workbook.Worksheets(0).Charts(0)

  'Convert the chart to an image file.

  chart.ToImage("d:\PieChart.emf", System.Drawing.Imaging.ImageFormat.Emf)

  执行上面的代码后,便生成了基于模板Excel文件中饼图的EMF图像文件,如下图所示:

柱形图转换成图像文件

  首先,我们在MS Excel中创建一个柱形图,然后照之前做的那样将图表转换成图像文件。

  在MS Excel中创建一个柱形图

  我打开了MS Excel中一个新工作簿,在工作表的不同区域中输入一些营销成本。然后,便创建了一个基于营销成本数据的柱形图,最后保存Excel文件。以下便是MS Excel中创建的文件截图:

  代码片段

  [C#]


  //Create a new workbook.

  //Open the existing excel file which contains the column chart.

  Workbook workbook = new Workbook("d:\\columnchart.xls");

  //Get the designer chart (first chart) in the first worksheet.

  //of the workbook.

  Aspose.Cells.Charts.Chart chart = workbook.Worksheets[0].Charts[0];

  //Convert the chart to an image file.

  chart.ToImage(@"d:\ColumnChart.jpeg", System.Drawing.Imaging.ImageFormat.Jpeg);

  [VB]


  'Create a new workbook.

  'Open the existing excel file which contains the column chart.

  Dim workbook As Aspose.Cells.Workbook = New Aspose.Cells.Workbook("d:\columnchart.xls")

  'Get the designer chart (first chart) in the first worksheet.

  'of the workbook.

  Dim chart As Aspose.Cells.Charts.Chart = workbook.Worksheets(0).Charts(0)

  'Convert the chart to an image file.

  chart.ToImage("d:\ColumnChart.jpeg", System.Drawing.Imaging.ImageFormat.Jpeg)

  执行上面的代码后,便生成了基于模板Excel文件中饼图的jpeg图像文件,如下图所示:

   

   

   

  


(慧都控件网版权所有,转载请注明出处,否则追究法律责任)

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

文章转载自:慧都控件网

登录慧都网发表评论登录


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关厂商
相关产品
Aspose.Cells

专业的电子表格控件,无需MS Excel也可满足一切Excel表格功能。

在线客服 在线QQ 电话咨询
400-700-1020
反馈
在线客服系统
live chat