Word转pdf

1.添加依赖

XML 复制代码
<dependencies>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>5.2.3</version>
    </dependency>
    <dependency>
        <groupId>com.itextpdf</groupId>
        <artifactId>itext7-core</artifactId>
        <version>7.2.2</version>
    </dependency>
</dependencies>

2.示例代码

java 复制代码
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class WordToPdfConverter {
    public static void main(String[] args) {
        String docFilePath = "input.docx"; // 输入的Word文件路径
        String pdfFilePath = "output.pdf"; // 输出的PDF文件路径

        try {
            convertWordToPdf(docFilePath, pdfFilePath);
            System.out.println("转换成功!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static void convertWordToPdf(String docFilePath, String pdfFilePath) throws IOException {
        XWPFDocument document = new XWPFDocument(new FileInputStream(docFilePath));
        PdfWriter writer = new PdfWriter(new FileOutputStream(pdfFilePath));
        PdfDocument pdfDoc = new PdfDocument(writer);
        Document pdfDocument = new Document(pdfDoc);
// 设置中文字体
        PdfFont font = PdfFontFactory.createFont("STSongStd-Light", "UniGB-UCS2-H", true);
        for (XWPFParagraph paragraph : document.getParagraphs()) {
            pdfDocument.add(new Paragraph(paragraph.getText()).setFont(font));
        }

        pdfDocument.close();
        pdfDoc.close();
        document.close();
    }
}

Apache POI可以处理Word文档,但它不直接支持输出为PDF。因此,通常需要将Word内容提取出来,然后通过PDF生成工具(如Apache PDFBox)来生成PDF。这种方法适合简单的文本和格式。

相关推荐
SEO-狼术20 分钟前
Automate PowerPoint to PDF Conversion in .NET
pdf·powerpoint
惠惠软件13 小时前
CleverPDF是一款专业的pdf转换器-强大的PDF表格识别能够将PDF中的表格提取到Excel或者其他格式-供大家学习研究参考
学习·pdf·excel·pdf工具包·pdf超级工具
iQM7516 小时前
Python自动化办公:批量提取PDF中的表格到Excel
pdf·自动化·excel
AI大模型_学习君18 小时前
实验 | 使用本地大模型从论文PDF中提取结构化信息
人工智能·深度学习·机器学习·pdf·llm·ai大模型·计算机技术
2401_8566522118 小时前
详解 PDF 转 JPG:简单操作,高效转换
图像处理·学习·pdf·电脑·娱乐
belldeep1 天前
java:pdfbox 3.0 去除扫描版PDF中文本水印
java·pdf·pdfbox
小Tomkk1 天前
免费 Oracle 各版本 离线帮助使用和介绍
数据库·oracle·pdf
fxybg20221 天前
畅享免费服务:PDF 转图片在线转换软件的魅力
图像处理·学习·pdf·学习方法·娱乐
GEEKVIP2 天前
如何移除 iPhone 上的网络锁?本文筛选了一些适合您的工具
windows·macos·ios·智能手机·pdf·iphone·ipad