【知识分享】Java用poi实现excel导出图片并浮在单元格上方
2023-12-13 17:22:50
当使用Java导出Excel并将图片放置在单元格上时,可以使用Apache POI库来实现。以下是一个简单的示例代码:
package org.example.demo2;
import com.aliyun.core.utils.IOUtils;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
public class test {
public static void main(String[] args) throws IOException {
// 创建工作簿
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet("Sheet1");
// 加载图片
InputStream inputStream = new FileInputStream("500540b041a30ad044b5a19344f1b24f.jpg");
byte[] imageBytes = IOUtils.toByteArray(inputStream);
inputStream.close();
// 将图片插入到工作簿
int pictureIdx = workbook.addPicture(imageBytes, Workbook.PICTURE_TYPE_JPEG);
CreationHelper helper = workbook.getCreationHelper();
Drawing<?> drawing = sheet.createDrawingPatriarch();
ClientAnchor anchor = helper.createClientAnchor();
anchor.setCol1(1); // 图片所在列
anchor.setRow1(1); // 图片所在行
Picture picture = drawing.createPicture(anchor, pictureIdx);
// 设置图片的大小
picture.resize(); // 默认大小为图片的实际大小
// 保存工作簿
FileOutputStream fileOut = new FileOutputStream("output.xlsx");
workbook.write(fileOut);
fileOut.close();
workbook.close();
}
}
在这个示例中,我们首先创建了一个工作簿和一个工作表,然后加载了图片文件,并将其插入到工作簿中。接下来,通过设置图片所在的列和行以及调整图片的大小,将图片放置在指定的单元格位置上。最后,将工作簿保存到指定路径下的Excel文件中。
请注意,上述代码中的路径和图片类型需要根据实际情况进行修改。希望这个示例能够帮助您实现将图片放置在Excel单元格上的功能。
实现结果

文章来源:https://blog.csdn.net/lf21qp/article/details/134973811
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!