java使用aspose读取word里的图片

依赖

复制代码
<dependency>
    <groupId>com.techCoLtd</groupId>
    <artifactId>aspose-words-16.4.0-jdk16</artifactId>
    <classifier>jdk16</classifier>
</dependency>
复制代码
/**
 * 获取图片并返回图片集合
 */
public static List<String> getPic() throws Exception {
    List<String> picList = new ArrayList<>();
    Document doc = new Document(saveFilePath);
    NodeCollection shapes = doc.getChildNodes(NodeType.SHAPE, true);
    int imageIndex = 0;
    for (Shape shape : (Iterable<Shape>) shapes) {
        if (shape.hasImage()) {
            //word中的图片 可能有各种各样的格式
            //使用FileFormatUtil.imageTypeToExtension 方法 可以自动提取格式
            String imageFileName = "D:\\work\\output\\" + imageIndex + FileFormatUtil.imageTypeToExtension(shape.getImageData().getImageType());
            FileUtil.mkParentDirs(imageFileName);//自动创建父级目录
            try {
                shape.getImageData().save(imageFileName);
            } catch (Exception e) {
                e.printStackTrace();
            }
            imageIndex++;
            picList.add(imageFileName);
        }
    }
    return picList;
}
相关推荐
Flittly2 小时前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
小兔崽子去哪了3 小时前
Java 生成二维码解决方案
java·后端
人活一口气7 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
NE_STOP9 小时前
Vibe Coding -- 完整项目案例实操
java
荣码9 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
SimonKing9 小时前
Google第三方授权登录
java·后端·程序员
明月光8189 小时前
从一行 @Builder 说起:重新拾起 Java 的 Lombok、注解与 Builder 模式
java
考虑考虑18 小时前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯19 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
青石路1 天前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java