`

POI插入图片到excel

 
阅读更多
package com.appdev.test;

import java.awt.image.BufferedImage;
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import javax.imageio.ImageIO;

import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFPicture;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;

public class ImageToExcel {

	public static void main(String args[]) {
		String fileUrl = "D:/123.xls"; 
		try {
			 //创建输入流,读取Excel
			File file = new File(fileUrl);
			BufferedInputStream in = new BufferedInputStream(new FileInputStream(file));
			POIFSFileSystem fs = new POIFSFileSystem(in);
			//获取excel的sheet
			HSSFWorkbook wb = new HSSFWorkbook(fs);
			HSSFSheet sheet = wb.getSheetAt(0);
			//把图片流读取到字节流
			ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
			BufferedImage bufferImg = ImageIO.read(new File("D:/image002.gif"));
			ImageIO.write(bufferImg, "jpg", byteArrayOut);
			//HSSFClientAnchor控制图片的大小和位置
			HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 1023, 255,
					(short) 2, 5, (short) 4, 6);
			anchor.setAnchorType(2);
			//HSSFPatriarch对流进行操作
			HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
			HSSFPicture pict = patriarch.createPicture(anchor, wb.addPicture(byteArrayOut
					.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));
			//图片自适应
			pict.resize();
			FileOutputStream fileOut = null;
			fileOut = new FileOutputStream(fileUrl);
			wb.write(fileOut);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}
分享到:
评论

相关推荐

    POI向excel中插入图片

    在本文中,我们将深入探讨如何使用POI库向Excel工作簿中插入图片。这将涵盖相关的API,步骤以及一些实用技巧。 首先,我们需要理解Excel的内部结构。在Excel文件中,图片是以OLE对象的形式存储的。POI提供了...

    POI导出带图片的excel

    7. **插入图片**:使用Drawing对象的createPicture方法,传入字节数组和锚点信息,创建图片并添加到Sheet中。 ```java int pictureId = workbook.addPicture(imageBytes, Workbook.PICTURE_TYPE_JPEG); ...

    POI导出Excel工具类,自动设置标题 列名 文件名,可插入图片,合并单元格

    在这个场景中,我们关注的是如何使用POI来创建一个功能丰富的Excel导出工具类,它能够自动设置标题、列名、文件名,并且支持插入图片以及合并单元格。下面将详细介绍这些功能的实现。 首先,要创建一个Excel工作簿...

    通过POI将PPT插入图片并导出实例

    在这个实例中,我们将深入探讨如何利用POI库来创建一个PowerPoint演示文稿,并在其中插入图片。这个过程涉及到多个步骤,包括设置工作簿,创建幻灯片,以及添加图片到幻灯片。 首先,我们需要在项目中引入Apache ...

    POI把图片写到excel表中

    本篇将详细讲解如何利用Apache POI将图片嵌入到Excel工作表中。 Apache POI提供了高级API(HSSF和XSSF)来处理Excel的97-2003 (.xls)和2007及以上版本(.xlsx)格式。在将图片写入Excel时,我们主要关注的是`...

    使用poi从数据库导出excel表的示例

    在本示例中,我们将探讨如何使用Apache POI库从数据库导出数据到Excel表格,这在数据分析、报告生成或批量数据处理场景中非常常见。Apache POI是一个开源项目,它允许Java开发者创建、修改和显示Microsoft Office...

    Java利用poi对word插入文字图片

    3. **插入图片**:在Word文档中插入图片需要用到`XWPFPictureData`和`XWPFParagraph`的`addPicture`方法。首先,你需要读取图片文件,将其转换为字节数组,然后添加到文档中。以下是一个例子: ```java byte[] ...

    POI操作Word中插入文本和图片

    4. 在段落中插入图片:创建一个`XWPFRun`对象,然后创建`XWPFPicture`并将其添加到段落中。 ```java XWPFRun pictureRun = paragraph.createRun(); XWPFPicture pictureInstance = paragraph.createPicture...

    java实现在Excel中插入图片

    总结起来,Java实现Excel中插入图片的核心步骤包括:导入Apache POI库,创建并操作工作簿和工作表,读取和创建图片对象,创建绘图工作表,设置图片位置,最后保存工作簿。在实际开发中,可能还需要处理图片格式转换...

    POI操作Excel完美生成水印

    3. **插入图片**:加载Excel工作簿后,你可以使用Sheet对象的createDrawingPatriarch()方法创建一个绘图父元素,这是在Excel工作表上添加图形的起点。接下来,使用ClientAnchor类来定位和设置图片的大小,并使用...

    利用java往excel中插入图片

    本篇文章将详细介绍如何利用Java和Apache POI库向Excel工作表中插入图片。 首先,我们需要理解Apache POI的工作原理。POI提供了一个名为HSSFPatriarch的类,它是Excel中的图形绘制容器,可以用于插入图片。对于....

    Apache poi 操作 excel 文件压缩包

    - 插入图片、图表和公式。 - 设置单元格样式,如字体、颜色、边框和填充。 - 处理工作簿和工作表的合并。 - 导出和导入数据到数据库。 - 自动化Excel报告生成。 在实际应用中,Apache POI 往往用于数据分析、报表...

    Java-poi生成带有图片的Excel

    3. **加载图片**:你需要将图片文件读取为字节数组,以便在Excel中插入。可以使用`Files.readAllBytes()`方法: ```java byte[] imageBytes = Files.readAllBytes(Paths.get("image.jpg")); ``` 4. **创建图片...

    JAVA poi 做EXCEL导出(包含图片) 完整版

    要插入图片,首先需要获取图片的数据,通常是从文件系统或网络加载。这里我们假设图片位于项目资源目录下: ```java FileInputStream imageStream = new FileInputStream("path_to_your_image.jpg"); byte[] ...

    POI最新Jar包Excel

    Excel部分,POI提供了对Excel电子表格的全面操作,包括创建新的工作簿、添加工作表、插入数据、设置样式、读取和解析已存在的文件等。Word部分,POI允许开发者创建新的Word文档,添加文本、段落、表格、图片,以及...

    poi导入word和图片

    ### POI导入Word文档与图片的关键技术点 #### 一、概述 Apache POI 是一个用于读写 Microsoft Office 格式文件(如 .doc、.xls 和 .ppt)的 Java API。本文档将详细介绍如何使用 POI 库来读取 Word 文档(包括 ....

    Java实现Excel读写的poi 5.2.1版本jar

    例如,通过使用POI库,你可以创建一个新的Excel工作簿,添加工作表,插入数据,设置单元格样式,应用公式,甚至处理图表和图片。同时,也可以读取已存在的Excel文件,提取数据,进行分析,然后将结果写回Excel或保存...

    利用POI解析excel并存入数据库demo

    总结起来,这个"利用POI解析excel并存入数据库demo"演示了如何使用 Apache POI 库来读取 Excel 文件,以及如何将读取到的数据存入 MySQL 数据库。开发者可以根据自己的需求对这个 demo 进行扩展,例如支持多个工作表...

    poi-java生成excel文档

    更复杂的操作,比如合并单元格、插入图片、使用公式、读取数据等,都可以通过POI提供的API实现。在实际开发中,你可以根据需求调整这些方法,构建出符合业务需求的复杂Excel文件。 需要注意的是,处理大型Excel文件...

Global site tag (gtag.js) - Google Analytics