Java 添加、读取、删除和重置Excel图片

2020-03-05  本文已影响0人  Tina_Tang

在日常编辑Excel文档时,大多数时候都是对数据进行统计与分析,但有时也不可避免会遇到需要添加图片到文档的情况,以此来使数据与图片相结合,进而达到使文档内容更加丰满和多样的效果。本文将通过使用Java程序来演示如何添加、读取、删除和重置Excel中的图片。

使用工具:Free Spire.XLS for Java(免费版)

Jar文件获取及导入:

方法1通过官网下载获取jar包。解压后将lib文件夹下的Spire.Xls.jar文件导入Java程序。(如下图)

方法2通过maven仓库安装导入。具体安装详情参见此网页

【示例1】添加图片

import com.spire.xls.ExcelPicture;

import com.spire.xls.ExcelVersion;

import com.spire.xls.Workbook;

import com.spire.xls.Worksheet;

public class AddImage {

public static void main(String[] args) {

//创建Workbook实例

        Workbook workbook = new Workbook();

//加载Excel文档

        workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.xlsx");

//获取第一张工作表

        Worksheet sheet = workbook.getWorksheets().get(0);

//添加图片到工作表的指定位置

        ExcelPicture pic = sheet.getPictures().add(20, 1,"C:\\Users\\Test1\\Desktop\\Image.jpg");

//设置图片的宽度和高度

        pic.setWidth(400);

        pic.setHeight(300);

//保存文档

        workbook.saveToFile("output/InsertImage.xlsx", ExcelVersion.Version2013);

    }

}

 图片添加效果:

【示例2】读取图片

import com.spire.xls.ExcelPicture;

import com.spire.xls.Workbook;

import com.spire.xls.Worksheet;

import javax.imageio.ImageIO;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

public class ReadImage {

public static void main(String[] args) throws IOException {

//创建Workbook实例

        Workbook workbook = new Workbook();

//加载Excel文档

        workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\InsertImage.xlsx");

//获取第一张工作表

        Worksheet sheet = workbook.getWorksheets().get(0);

//获取工作表中第一张图片并保存到指定路径

        ExcelPicture pic = sheet.getPictures().get(0);

        BufferedImage loImage = pic.getPicture();

        ImageIO.write(loImage,

"jpg",new File("output/ReadImage.jpg"));

    }

}

图片读取效果:

【示例3】删除图片

import com.spire.xls.*;

public class DeleteImage {

public static void main(String[] args) {

//加载示例文档

        Workbook workbook = new Workbook();

        workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\InsertImage.xlsx");

//获取第一个工作表

        Worksheet sheet = workbook.getWorksheets().get(0);

//获取第一张图片

        ExcelPicture pic = sheet.getPictures().get(0);

//删除图片

        pic.remove();

//保存文档

        workbook.saveToFile("output/RemoveImage.xlsx");

        workbook.dispose();

    }

}

图片删除效果:

【示例4】重置图片大小和位置

import com.spire.xls.*;

public class ResetPosition {

public static void main(String[] args) {

//加载示例文档

        Workbook workbook = new Workbook();

        workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\InsertImage.xlsx");

//获取第一个工作表

        Worksheet sheet = workbook.getWorksheets().get(0);

//获取第一张图片

        ExcelPicture pic = sheet.getPictures().get(0);

//重置大小

        pic.setHeight(150);

        pic.setWidth(200);

//重置位置

        pic.setLeft(400);

        pic.setTop(400);

//保持文档

        workbook.saveToFile("output/ResetPosition.xlsx");

        workbook.dispose();

    }

}

图片重置效果:

(本文完)

上一篇下一篇

猜你喜欢

热点阅读