demo
public static void main(String[] args) {
FileOutputStream fileOut = null;
BufferedImage bufferImg = null;
// 先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray
try {
ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
bufferImg = ImageIO.read(new File("D:/6993455.jpg"));
ImageIO.write(bufferImg, "jpg", byteArrayOut);
XSSFWorkbook wb = new XSSFWorkbook();
XSSFSheet sheet1 = wb.createSheet("test picture");
// 画图的顶级管理器,一个sheet只能获取一个(一定要注意这点)
XSSFDrawing patriarch = sheet1.createDrawingPatriarch();
// XSSFClientAnchor anchor1 = new XSSFClientAnchor(0, 0,
// 1023,100,(short) 1, 1, (short)5, 8);
// XSSFClientAnchor anchor2 = new XSSFClientAnchor(0, 0,
// 1023,100,(short) 1, 9, (short)5, 16);
// //插入图片
// patriarch.createPicture(anchor1,
// wb.addPicture(byteArrayOut.toByteArray(),
// XSSFWorkbook.PICTURE_TYPE_JPEG));
// patriarch.createPicture(anchor2,
// wb.addPicture(byteArrayOut.toByteArray(),
// XSSFWorkbook.PICTURE_TYPE_JPEG));
// anchor主要用于设置图片的属性
XSSFClientAnchor anchor = new XSSFClientAnchor(0, 0, 255, 255, (short) 1, 1, (short) 5, 8);
anchor.setAnchorType(3);
// 插入图片
patriarch.createPicture(anchor, wb.addPicture(byteArrayOut.toByteArray(), XSSFWorkbook.PICTURE_TYPE_JPEG));
fileOut = new FileOutputStream("D:/测试Excel.xlsx");
// 写入excel文件
wb.write(fileOut);
System.out.println("----2007Excle文件已生成------");
} catch (Exception e) {
e.printStackTrace();
} finally {
if (fileOut != null) {
try {
fileOut.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
// // 2003版本
// FileOutputStream fileOut = null;
// BufferedImage bufferImg = null;
// // 先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray
// try {
// ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
// bufferImg = ImageIO.read(new File("F:/图片/照片/无名氏/小昭11.jpg"));
// ImageIO.write(bufferImg, "jpg", byteArrayOut);
//
// HSSFWorkbook wb = new HSSFWorkbook();
// HSSFSheet sheet1 = wb.createSheet("test picture");
// // 画图的顶级管理器,一个sheet只能获取一个(一定要注意这点)
// HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();
// // anchor主要用于设置图片的属性
// HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 255, 255, (short) 1, 1, (short) 5, 8);
// anchor.setAnchorType(3);
// // 插入图片
// patriarch.createPicture(anchor, wb.addPicture(byteArrayOut.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));
// fileOut = new FileOutputStream("D:/测试Excel.xls");
// // 写入excel文件
// wb.write(fileOut);
// System.out.println("----2003Excle文件已生成------");
// } catch (Exception e) {
// e.printStackTrace();
// } finally {
// if (fileOut != null) {
// try {
// fileOut.close();
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
// }
}