# document **Repository Path**: keyleaf/document ## Basic Information - **Project Name**: document - **Description**: 文档转pdf及pdf合并处理demo - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-05 - **Last Updated**: 2025-11-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 文档 ## 使用说明 1. 添加maven依赖 ```xml com.keyleaf.up document-sdk 0.0.1-SNAPSHOT ``` 2. 参照DocumentClient.defaultClient()构造DocumentClient对象 3. 通过调用DocumentClient.convertToPdf方法,将文件转换为pdf文件 4. 通过调用DocumentClient.mergeIntoPdf方法,将多个文件合并为一个pdf文件 ## 核心依赖 ### jodconverter-local ```text jodconverter-local ‌是一个基于 LibreOffice 或 OpenOffice 的本地文档转换工具, 它通过调用本地安装的LibreOffice或OpenOffice来实现文档的转换功能, 支持多种文档格式的相互转换,如Word、Excel、PowerPoint等。 本项目中,jodconverter-local依赖了libreoffice,通过libreoffice来提供文档的转换能力。 ``` ### pdfbox ```text Apache PDFBox 是一个开源 Java 库,支持 PDF 文档的开发和转换。 使用这个库,您可以开发创建、转换和操作 PDF 文档的 Java 程序。 本项目中,主要通过pdfbox来提供对pdf文档的合并能力。 ``` ### tika-core ```text Apache Tika是一个内容分析工具包,可以检测和提取超过一千种不同文件类型的元数据和文本。 Tika的主要功能包括: 文件类型检测:自动检测文件的类型 内容提取:从文件中提取文本内容 元数据提取:从文件中提取元数据信息,如作者、创建日期等 支持多种文件格式:支持超过一千种文件格式,包括PDF、Word、Excel、PPT等 本项目中,主要通过tika-core来获取文件的mimeType,后期可能会用到文档内容提取功能。 ``` # libreoffice 官网地址 https://marketing.libreoffice.org 1. 本地调试需要安装对应操作系统版本的libreoffice 2. 服务器端建议通过docker容器内安装libreoffice[Dockerfile](document-demo/Dockerfile) 3. libreoffice启动核心类[LibreOfficeStarter.java](src/main/java/com/keyleaf/up/document/starter/LibreOfficeStarter.java)