Java 将Excel工作表中的图表转换为图片
在前文中,我介绍过如何使用Java代码来创建Excel图表,包括柱状图、饼状图和折线图。本文将演示如何将Excel工作表中已有的图表转换为图片,其中用到的第三方组件是Free Spire.XLS for Java。
创建配置环境
首先,需下载安装JDK1.8.0和Intellij IDEA,接着将组件中的Jar包导入IDEA。导入方式有两种:其一,在E-iceblue中文官网上下载Free Spire.XLS for Java产品包,解压后在lib文件夹下找到Spire.Xls.jar,然后手动将其导入IDEA;其二,在IDEA中创建Maven项目,然后在pom.xml文件下键入下方代码,最后点击“Import Changes”即可。
com.e-iceblue
http://repo.e-iceblue.cn/repository/maven-public/
e-iceblue
spire.xls.free
3.9.1
代码示例
Free Spire.XLS for Java提供了workbook.saveChartAsImage() 方法来将图表转换为图片,其中可指定具体某个工作表中的某个图表。
import com.spire.xls.Workbook;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class ChartToImage {
public static void main(String[] args) throws IOException {
//创建Workbook实例并加载Excel文档
Workbook workbook = new Workbook();
workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\ColumnChart.xlsx");
//将Excel文档第一个工作表中的第一个图表保存为图片
BufferedImage image= workbook.saveChartAsImage(workbook.getWorksheets().get(0), 0);
ImageIO.write(image,"png", new File("output/ChartToImage.png"));
}
}
示例Excel图表:
转换后的图片: