org.apache.poi.hssf.usermodel.HSSFWorkbook.getAllPictures()方法的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(7.8k)|赞(0)|评价(0)|浏览(577)

本文整理了Java中org.apache.poi.hssf.usermodel.HSSFWorkbook.getAllPictures()方法的一些代码示例,展示了HSSFWorkbook.getAllPictures()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。HSSFWorkbook.getAllPictures()方法的具体详情如下:
包路径:org.apache.poi.hssf.usermodel.HSSFWorkbook
类名称:HSSFWorkbook
方法名:getAllPictures

HSSFWorkbook.getAllPictures介绍

[英]Gets all pictures from the Workbook.
[中]获取工作簿中的所有图片。

代码示例

代码示例来源:origin: looly/hutool

  1. /**
  2. * 获取XLS工作簿指定sheet中图片列表
  3. *
  4. * @param workbook 工作簿{@link Workbook}
  5. * @param sheetIndex sheet的索引
  6. * @return 图片映射,键格式:行_列,值:{@link PictureData}
  7. */
  8. private static Map<String, PictureData> getPicMapXls(HSSFWorkbook workbook, int sheetIndex) {
  9. final Map<String, PictureData> picMap = new HashMap<>();
  10. final List<HSSFPictureData> pictures = workbook.getAllPictures();
  11. if (CollectionUtil.isNotEmpty(pictures)) {
  12. final HSSFSheet sheet = workbook.getSheetAt(sheetIndex);
  13. HSSFClientAnchor anchor;
  14. int pictureIndex;
  15. for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {
  16. if (shape instanceof HSSFPicture) {
  17. pictureIndex = ((HSSFPicture) shape).getPictureIndex() - 1;
  18. anchor = (HSSFClientAnchor) shape.getAnchor();
  19. picMap.put(StrUtil.format("{}_{}", anchor.getRow1(), anchor.getCol1()), pictures.get(pictureIndex));
  20. }
  21. }
  22. }
  23. return picMap;
  24. }

代码示例来源:origin: looly/hutool

  1. /**
  2. * 获取XLS工作簿指定sheet中图片列表
  3. *
  4. * @param workbook 工作簿{@link Workbook}
  5. * @param sheetIndex sheet的索引
  6. * @return 图片映射,键格式:行_列,值:{@link PictureData}
  7. */
  8. private static Map<String, PictureData> getPicMapXls(HSSFWorkbook workbook, int sheetIndex) {
  9. final Map<String, PictureData> picMap = new HashMap<>();
  10. final List<HSSFPictureData> pictures = workbook.getAllPictures();
  11. if (CollectionUtil.isNotEmpty(pictures)) {
  12. final HSSFSheet sheet = workbook.getSheetAt(sheetIndex);
  13. HSSFClientAnchor anchor;
  14. int pictureIndex;
  15. for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {
  16. if (shape instanceof HSSFPicture) {
  17. pictureIndex = ((HSSFPicture) shape).getPictureIndex() - 1;
  18. anchor = (HSSFClientAnchor) shape.getAnchor();
  19. picMap.put(StrUtil.format("{}_{}", anchor.getRow1(), anchor.getCol1()), pictures.get(pictureIndex));
  20. }
  21. }
  22. }
  23. return picMap;
  24. }

代码示例来源:origin: org.apache.poi/poi

  1. HSSFPictureData pictData = getSheet().getWorkbook().getAllPictures().get(pictureIndex-1);
  2. switch (pictData.getFormat()) {
  3. case Workbook.PICTURE_TYPE_WMF:

代码示例来源:origin: stackoverflow.com

  1. POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(anExcelFile));
  2. HSSFWorkbook workbook = new HSSFWorkbook(fs);
  3. List lst = workbook.getAllPictures();
  4. for (Iterator it = lst.iterator(); it.hasNext(); ) {
  5. PictureData pict = (PictureData)it.next();
  6. String ext = pict.suggestFileExtension();
  7. byte[] data = pict.getData();
  8. if (ext.equals("jpeg")){
  9. FileOutputStream out = new FileOutputStream("pict.jpg");
  10. out.write(data);
  11. out.close();
  12. }
  13. }

代码示例来源:origin: cuba-platform/yarg

  1. protected void copyPicturesToResultWorkbook() {
  2. List<HSSFPictureData> allPictures = templateWorkbook.getAllPictures();
  3. for (HSSFPictureData allPicture : allPictures) {
  4. int i = resultWorkbook.addPicture(allPicture.getData(), Workbook.PICTURE_TYPE_JPEG);
  5. orderedPicturesId.add(i);
  6. }
  7. }

代码示例来源:origin: com.haulmont.yarg/yarg

  1. protected void copyPicturesToResultWorkbook() {
  2. List<HSSFPictureData> allPictures = templateWorkbook.getAllPictures();
  3. for (HSSFPictureData allPicture : allPictures) {
  4. int i = resultWorkbook.addPicture(allPicture.getData(), Workbook.PICTURE_TYPE_JPEG);
  5. orderedPicturesId.add(i);
  6. }
  7. }

代码示例来源:origin: cn.afterturn/easypoi-base

  1. /**
  2. * 获取Excel2003图片
  3. *
  4. * @param sheet
  5. * 当前sheet对象
  6. * @param workbook
  7. * 工作簿对象
  8. * @return Map key:图片单元格索引(1_1)String,value:图片流PictureData
  9. */
  10. public static Map<String, PictureData> getSheetPictrues03(HSSFSheet sheet,
  11. HSSFWorkbook workbook) {
  12. Map<String, PictureData> sheetIndexPicMap = new HashMap<String, PictureData>();
  13. List<HSSFPictureData> pictures = workbook.getAllPictures();
  14. if (!pictures.isEmpty()) {
  15. for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {
  16. HSSFClientAnchor anchor = (HSSFClientAnchor) shape.getAnchor();
  17. if (shape instanceof HSSFPicture) {
  18. HSSFPicture pic = (HSSFPicture) shape;
  19. int pictureIndex = pic.getPictureIndex() - 1;
  20. HSSFPictureData picData = pictures.get(pictureIndex);
  21. String picIndex = String.valueOf(anchor.getRow1()) + "_"
  22. + String.valueOf(anchor.getCol1());
  23. sheetIndexPicMap.put(picIndex, picData);
  24. }
  25. }
  26. return sheetIndexPicMap;
  27. } else {
  28. return sheetIndexPicMap;
  29. }
  30. }

代码示例来源:origin: xiaolanglang/easypoi

  1. /**
  2. * 获取Excel2003图片
  3. *
  4. * @param sheet
  5. * 当前sheet对象
  6. * @param workbook
  7. * 工作簿对象
  8. * @return Map key:图片单元格索引(1_1)String,value:图片流PictureData
  9. */
  10. public static Map<String, PictureData> getSheetPictrues03(HSSFSheet sheet, HSSFWorkbook workbook) {
  11. Map<String, PictureData> sheetIndexPicMap = new HashMap<String, PictureData>();
  12. List<HSSFPictureData> pictures = workbook.getAllPictures();
  13. if (!pictures.isEmpty()) {
  14. for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {
  15. HSSFClientAnchor anchor = (HSSFClientAnchor) shape.getAnchor();
  16. if (shape instanceof HSSFPicture) {
  17. HSSFPicture pic = (HSSFPicture) shape;
  18. int pictureIndex = pic.getPictureIndex() - 1;
  19. HSSFPictureData picData = pictures.get(pictureIndex);
  20. String picIndex = String.valueOf(anchor.getRow1()) + "_"
  21. + String.valueOf(anchor.getCol1());
  22. sheetIndexPicMap.put(picIndex, picData);
  23. }
  24. }
  25. return sheetIndexPicMap;
  26. } else {
  27. return null;
  28. }
  29. }

代码示例来源:origin: zhangdaiscott/jeasypoi

  1. /**
  2. * 获取Excel2003图片
  3. *
  4. * @param sheet
  5. * 当前sheet对象
  6. * @param workbook
  7. * 工作簿对象
  8. * @return Map key:图片单元格索引(1_1)String,value:图片流PictureData
  9. */
  10. public static Map<String, PictureData> getSheetPictrues03(HSSFSheet sheet, HSSFWorkbook workbook) {
  11. Map<String, PictureData> sheetIndexPicMap = new HashMap<String, PictureData>();
  12. List<HSSFPictureData> pictures = workbook.getAllPictures();
  13. if (!pictures.isEmpty()) {
  14. for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {
  15. HSSFClientAnchor anchor = (HSSFClientAnchor) shape.getAnchor();
  16. if (shape instanceof HSSFPicture) {
  17. HSSFPicture pic = (HSSFPicture) shape;
  18. int pictureIndex = pic.getPictureIndex() - 1;
  19. HSSFPictureData picData = pictures.get(pictureIndex);
  20. String picIndex = String.valueOf(anchor.getRow1()) + "_" + String.valueOf(anchor.getCol1());
  21. sheetIndexPicMap.put(picIndex, picData);
  22. }
  23. }
  24. return sheetIndexPicMap;
  25. } else {
  26. return null;
  27. }
  28. }

代码示例来源:origin: org.jeecg/easypoi-base

  1. /**
  2. * 获取Excel2003图片
  3. *
  4. * @param sheet
  5. * 当前sheet对象
  6. * @param workbook
  7. * 工作簿对象
  8. * @return Map key:图片单元格索引(1_1)String,value:图片流PictureData
  9. */
  10. public static Map<String, PictureData> getSheetPictrues03(HSSFSheet sheet,
  11. HSSFWorkbook workbook) {
  12. Map<String, PictureData> sheetIndexPicMap = new HashMap<String, PictureData>();
  13. List<HSSFPictureData> pictures = workbook.getAllPictures();
  14. if (!pictures.isEmpty()) {
  15. for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {
  16. HSSFClientAnchor anchor = (HSSFClientAnchor) shape.getAnchor();
  17. if (shape instanceof HSSFPicture) {
  18. HSSFPicture pic = (HSSFPicture) shape;
  19. int pictureIndex = pic.getPictureIndex() - 1;
  20. HSSFPictureData picData = pictures.get(pictureIndex);
  21. String picIndex = String.valueOf(anchor.getRow1()) + "_"
  22. + String.valueOf(anchor.getCol1());
  23. sheetIndexPicMap.put(picIndex, picData);
  24. }
  25. }
  26. return sheetIndexPicMap;
  27. } else {
  28. return sheetIndexPicMap;
  29. }
  30. }

代码示例来源:origin: cn.hutool/hutool-all

  1. /**
  2. * 获取XLS工作簿指定sheet中图片列表
  3. *
  4. * @param workbook 工作簿{@link Workbook}
  5. * @param sheetIndex sheet的索引
  6. * @return 图片映射,键格式:行_列,值:{@link PictureData}
  7. */
  8. private static Map<String, PictureData> getPicMapXls(HSSFWorkbook workbook, int sheetIndex) {
  9. final Map<String, PictureData> picMap = new HashMap<>();
  10. final List<HSSFPictureData> pictures = workbook.getAllPictures();
  11. if (CollectionUtil.isNotEmpty(pictures)) {
  12. final HSSFSheet sheet = workbook.getSheetAt(sheetIndex);
  13. HSSFClientAnchor anchor;
  14. int pictureIndex;
  15. for (HSSFShape shape : sheet.getDrawingPatriarch().getChildren()) {
  16. if (shape instanceof HSSFPicture) {
  17. pictureIndex = ((HSSFPicture) shape).getPictureIndex() - 1;
  18. anchor = (HSSFClientAnchor) shape.getAnchor();
  19. picMap.put(StrUtil.format("{}_{}", anchor.getRow1(), anchor.getCol1()), pictures.get(pictureIndex));
  20. }
  21. }
  22. }
  23. return picMap;
  24. }

代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.poi

  1. HSSFPictureData pictData = getSheet().getWorkbook().getAllPictures().get(pictureIndex-1);
  2. switch (pictData.getFormat()) {
  3. case Workbook.PICTURE_TYPE_WMF:

相关文章

HSSFWorkbook类方法