`

使用POI向Excel中插入多张图片

    博客分类:
  • Java
阅读更多
POI3.0以上版本才支持向Excel中插入图片

http://apache.freelamp.com/jakarta/poi/release/src/poi-src-3.0-FINAL-20070503.zip

http://apache.freelamp.com/jakarta/poi/release/bin/poi-bin-3.0-FINAL-20070503.zip

新版的API可能支持的內容更丰富,不过文件也越来越大了.


Java代码

 
package com.emis.test;  
  
import java.io.FileOutputStream;  
import java.io.File;  
import java.io.ByteArrayOutputStream;  
import java.io.IOException;  
  
import java.awt.image.BufferedImage;  
import javax.imageio.*;  
  
import org.apache.poi.hssf.usermodel.HSSFWorkbook;  
import org.apache.poi.hssf.usermodel.HSSFSheet;  
import org.apache.poi.hssf.usermodel.HSSFPatriarch;  
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;  
  
public class test {  
  
    public static void main(String[] args) {  
            FileOutputStream fileOut = null;  
            BufferedImage bufferImg =null;  
            BufferedImage bufferImg1 = null;  
            try{  
  
          //先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray  
          ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();  
          ByteArrayOutputStream byteArrayOut1 = new ByteArrayOutputStream();  
          bufferImg = ImageIO.read(new File("D:\\wwwroot\\smepos3.0\\images\\link01.jpg"));  
          bufferImg1 = ImageIO.read(new File("D:\\wwwroot\\smepos3.0\\images\\link02.jpg"));  
          ImageIO.write(bufferImg,"jpg",byteArrayOut);  
          ImageIO.write(bufferImg1,"jpg",byteArrayOut1);  
  
        //创建一个工作薄  
       HSSFWorkbook wb = new HSSFWorkbook();  
       HSSFSheet sheet1 = wb.createSheet("new sheet");  
       //HSSFRow row = sheet1.createRow(2);  
       HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();  
       HSSFClientAnchor anchor = new HSSFClientAnchor(0,0,100,50,(short) 1,1,(short)10,20);  
       HSSFClientAnchor anchor1 = new HSSFClientAnchor(0,0,100,50,(short) 2,30,(short)10,60);  
       anchor1.setAnchorType(2);  
       //插入图片  
       patriarch.createPicture(anchor , wb.addPicture(byteArrayOut.toByteArray(),HSSFWorkbook.PICTURE_TYPE_JPEG));  
       patriarch.createPicture(anchor1 , wb.addPicture(byteArrayOut1.toByteArray(),HSSFWorkbook.PICTURE_TYPE_JPEG));  
  
           fileOut = new FileOutputStream("d:/workbook.xls");  
           //写入excel文件  
           wb.write(fileOut);  
           fileOut.close();  
  
            }catch(IOException io){  
                    io.printStackTrace();  
                    System.out.println("io erorr : "+ io.getMessage());  
            } finally  
            {  
               if (fileOut != null)  
               {  
  
                   try {  
                              fileOut.close();  
                         }  
                   catch (IOException e)  
                   {  
                            // TODO Auto-generated catch block  
                            e.printStackTrace();  
                     }  
               }  
            }  
    }  
}
分享到:
评论

相关推荐

    POI向excel中插入图片

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

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

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

    使用POI在Excel中动态生成图表工具类(支持柱状、组合、环状图、折线图、等常用图)

    本教程将深入讲解如何使用POI来动态地在Excel中创建各种图表,包括柱状图、组合图、环状图和折线图。 首先,确保已经添加了Apache POI的依赖到项目中。通常,对于Maven项目,可以在pom.xml文件中添加以下依赖: ``...

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

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

    Java 使用poi导入excel 并使用xml做数据验证

    Apache POI是一个流行的库,它允许开发者使用Java来读取、写入和修改Microsoft Office格式的文件,包括Excel(.xlsx, .xls)。在本项目中,我们结合了POI库和XML技术来实现Excel数据的验证与导入数据库。 首先,...

    java的poi生成excel图表demo

    在完成所有操作后,将项目打包成JAR文件,这样就可以作为一个可执行程序或库在其他项目中使用。这一步通常通过构建工具如Maven或Gradle完成,打包后的JAR包含了所有依赖,使得运行更加便捷。 8. **应用与用途** ...

    使用poi方式导出excel(分多个sheet导出)

    本教程将详细介绍如何利用Apache POI库来实现使用多个Sheet(工作簿)导出一个Excel文件的功能。 一、Apache POI简介 Apache POI 是一个开源项目,提供API来读取、写入和修改Microsoft Office文件格式,如Word(DOC...

    POI导出带图片的excel

    在实际应用中,你可能需要处理多个图片,或者根据用户输入动态插入图片。此外,还可以通过调整单元格样式、添加公式等方法来进一步丰富Excel文件的内容。总之,Apache POI提供了强大的工具,让你能够创建复杂且富有...

    java实现在Excel中插入图片

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

    使用poi生成Excel所需要的jar包

    在POI-3.9版本中,你还可以使用高级特性,如图表、图片插入、公式计算等。不过要注意,这个版本相对较旧,可能不支持Apache POI的最新功能。对于新项目,通常建议使用较新的版本,以获取更好的性能和更多的功能支持...

    基于POI的Excel多Sheet页导出导入工具类

    "基于POI的Excel多Sheet页导出导入工具类"是一个实用的Java类库,专为处理Excel文件中的多个工作表(Sheet)而设计,提供了一种高效且灵活的方式来操作Excel数据。 该工具类的核心功能包括: 1. **多Sheet页操作**...

    POI操作Excel完美生成水印

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

    利用java往excel中插入图片

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

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

    在Java编程环境中,Apache POI库是一个非常实用的工具,用于读取、写入和修改Microsoft Office格式的文件,特别是Excel(.xlsx 和 .xls)文件。本教程将详细介绍如何使用JAVA POI库来创建一个包含图片的完整Excel...

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

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

    poi包 EXCEL模板读取填数据并导出以及在模板某行插入新的行

    标题中的“poi包 EXCEL模板读取填数据并导出以及在模板某行插入新的行”涉及到了Apache POI库的使用,这是一个Java API,专门用于处理Microsoft Office格式的文件,如Excel。以下是对这个主题的详细解释: Apache ...

    利用poi获取excel数据批量插入大量数据到mysql

    本教程将详述如何使用Apache POI库读取Excel数据,并通过Java的JDBC接口批量插入到MySQL数据库中。Apache POI是Java平台上的一个开源项目,它允许程序员创建、修改和显示Microsoft Office格式的文件,其中包括Excel...

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

    在这个"利用POI解析excel并存入数据库demo"中,我们将关注如何使用 POI 库来读取 Excel 文件,并将数据有效地存入 MySQL 数据库。 首先,要开始使用 POI,你需要在你的项目中引入相应的依赖。如果你使用的是 Maven...

    使用POI和Excel VBA生成图表

    项目中想实现excel图表但POI不支持所以想到了这个方法。放上来抛砖引玉,感兴趣的欢迎大家交流 注:-------------------------------------------------------------------------- 其实现原理和利用JavaScript实现...

    使用PoI读取Excel插入库的Demo

    本Demo——"使用PoI读取Excel插入库的Demo"专注于演示如何利用Apache POI库来读取Excel文件,并将这些数据有效地存入MySQL数据库中。Apache POI是Java社区开发的一个开源项目,它提供了对Microsoft Office格式(如...

Global site tag (gtag.js) - Google Analytics