已验证正常,Java输入字符串生成PDF文件

Java输入字符串生成PDF文件过程:

在Java开发中,如何将字符串转换为 PDF 是一个常见的需求。网上找了很多例子都无法生成,经过多次尝试,终于实现了,特此记录一下。

1、引入pom.xml 添加所需的依赖

XML 复制代码
        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>itextpdf</artifactId>
            <version>5.5.5</version>
        </dependency>
        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>itext-asian</artifactId>
            <version>5.2.0</version>
        </dependency>

2、代码实现

java 复制代码
    public static void main(String[] args) {
        Document document = new Document();
        try {
            // 设置输出路径和文件名
            PdfWriter.getInstance(document,  new FileOutputStream("输出的PDF文件地址"));
            document.open();

            // 设置中文字体
            BaseFont baseFont = null;
            try {
                baseFont = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
            } catch (IOException e) {
                throw new RuntimeException(e);
            }


            // 添加标题
            Paragraph title = new Paragraph("标题内容", new Font(baseFont, 16, Font.BOLD));
            // 设置标题居中
            title.setAlignment(Paragraph.ALIGN_CENTER);

            document.add(title);

            // 添加内容
            String content = "正文内容";

            // 设置正文的格式
            Font font = new Font(baseFont, 13, Font.BOLD);
            Paragraph paragraph = new Paragraph(content, font);

            document.add(paragraph);

        } catch (DocumentException | IOException e) {
            e.printStackTrace();
        }finally {
            document.close();
        }
    }

3、结论

通过以上代码可以正常生成PDF文件,更多内容其他格式,请自行设置。

相关推荐
皎味小行家13 分钟前
第四十六天|动态规划|子序列|647. 回文子串,5.最长回文子串, 516.最长回文子序列,动态规划总结篇
java·数据结构·算法·leetcode·动态规划
LUCIAZZZ17 分钟前
通过代理模式理解Java注解的实现原理
java·开发语言·数据库·spring boot·mysql·spring·代理模式
计算机-秋大田25 分钟前
基于Spring Boot的图书个性化推荐系统的设计与实现(LW+源码+讲解)
java·前端·spring boot·后端·spring·课程设计
m0_7482365828 分钟前
【Spring Boot】统一异常处理
java·spring boot·后端
肘击鸣的百k路29 分钟前
处理Spring MVC 中的跨域问题
java·spring·mvc
大得36932 分钟前
封装descriptions组件,描述,灵活
开发语言·javascript·vue.js
sniper_fandc40 分钟前
详解享元模式
java·设计模式·享元模式
Tiantangbujimo741 分钟前
11.享元模式 (Flyweight)
开发语言·享元模式
E_han1 小时前
7.list
开发语言·汇编·数据结构·c++·算法·list
早起的年轻人1 小时前
Flutter List 的 every 如果回调函数抛出异常 应该如何处理
开发语言·python·flutter