java 读取 excel 图片_Java 添加、读取、删除和重置Excel图片

本文介绍了如何使用Java通过Spire.Xls库来操作Excel文档中的图片,包括添加图片、读取图片、删除图片以及重置图片的位置和大小。示例代码详细展示了具体的操作步骤和效果。

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

Jar文件获取及导入:

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

c4150b7efd24b763803aca925af812f0.png

方法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);

}

}

图片添加效果:

bd2f65058039391c6439d9705944e819.png

【示例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"));

}

}

图片读取效果:

f6611d92b450b9feae55520a633c2329.png

【示例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();

}

}

图片删除效果:

bbac5a9526bd2fe2c35517e08d0b16b8.png

【示例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();

}

}

图片重置效果:

227679a1cfe294878108ae2c639d57e4.png

(本文完)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值