使用POI向excel中写入图片的java代码

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

List headlist = this.getCS_HEAD(allFactoryNo);
HSSFSheet sheet = workbook.createSheet();
sheet.setColumnWidth((short)0, 6000);
sheet.setColumnWidth((short)1, 10000);
HSSFRow row3 = sheet.createRow(3);
HSSFPatriarch pa = sheet.createDrawingPatriarch();    //增加多個图片时只需要创建一个对象
HSSFRow row4 = sheet.createRow(4);
HSSFCell cell40 = row4.createCell(0);
cell40.setCellValue("编码");
HSSFCell cell41 = row4.createCell(1);
cell41.setCellValue("名称");
for(int i=0;i<headlist.size();i++){
Cs_head cshead = (Cs_head) headlist.get(i);
SmbFile smbFile = new SmbFile("smb://erp002:erp002@IP/cac_phot/"+cshead.getProduct());//访问网络共享文件
InputStream is = smbFile.getInputStream();
int x1=0;
int y1=0;
int x2=x1+255;
int y2=y1+255;
HSSFClientAnchor anchor = new HSSFClientAnchor(x1,y1,x2,y2,(short)(2+(i*2)),0,(short)(4+(i*2)),2);
anchor.setAnchorType(2);
BufferedImage bi = ImageIO.read(is);
ByteArrayOutputStream bout=new ByteArrayOutputStream();
ImageIO.write(bi,"JPG",bout);
pa.createPicture(anchor , workbook.addPicture(bout.toByteArray(),HSSFWorkbook.PICTURE_TYPE_JPEG));