已验证正常,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文件,更多内容其他格式,请自行设置。

相关推荐
Escalating_xu29 分钟前
【Python】使用库:标准库、第三方库、pip、项目实战与程序打包
java·python·pip
Wang's Blog1 小时前
Java框架 SpringCloud 快速入门: 过滤器链执行顺序
java·spring cloud
geovindu1 小时前
rust: Abstract Factory pattern
开发语言·后端·设计模式·rust·抽象工厂模式
砚底藏山河1 小时前
量化实战:回测数据底座快照与版本管理进阶
java·大数据·python·金融·maven
“AI国潮设计-小江”1 小时前
《Python+SDXL实战:用ControlNet批量生成“英歌舞麻将糕”IP,附自动化脚本与商用思路》
开发语言·人工智能·python·prompt·aigc
Cc.Y1 小时前
Java零基础入门:封装与继承 —— 从“裸奔“到“穿衣服“,从“重复造轮子“到“站在巨人肩膀上“
java·开发语言
Escalating_xu2 小时前
【C 语言】深入理解指针(4):回调函数、qsort、void * 与泛型排序的模拟实现
java·c语言·开发语言
Shaoshing2 小时前
雪花算法
java
w_zero_one2 小时前
链表(4)
java·数据结构·算法
吠品2 小时前
GitHub 周榜拆解:决策小模型扎堆上位
c语言·开发语言·算法