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

相关推荐
兩尛2 小时前
c++知识点2
开发语言·c++
fengfuyao9852 小时前
海浪PM谱及波形的Matlab仿真实现
开发语言·matlab
xiaoye-duck2 小时前
C++ string 底层原理深度解析 + 模拟实现(下)——面试 / 开发都适用
开发语言·c++·stl
Hx_Ma163 小时前
SpringMVC框架提供的转发和重定向
java·开发语言·servlet
期待のcode4 小时前
原子操作类LongAdder
java·开发语言
舟舟亢亢4 小时前
Java集合笔记总结
java·笔记
小酒窝.4 小时前
【多线程】多线程打印ABC
java
lly2024065 小时前
C 语言中的结构体
开发语言
乡野码圣5 小时前
【RK3588 Android12】RCU机制
java·jvm·数据库
JAVA+C语言5 小时前
如何优化 Java 多主机通信的性能?
java·开发语言·php