根据现有PDF模板填充信息(SpringBoot)

根据现有PDF模板填充信息(SpringBoot+maven)

首先得有一个pdf模板,建立pdf模板需要下载工具

红色框为文本框,filename为域名。java需要根据域名赋值

pom 文件配置

<!-- always needed -->
        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>layout</artifactId>
            <version>7.0.3</version>
        </dependency>

        <!-- only needed for forms -->
        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>forms</artifactId>
            <version>7.0.3</version>
        </dependency>

        <!-- only needed for Asian fonts -->
        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>font-asian</artifactId>
            <version>7.0.3</version>
        </dependency>

java 代码

 // pdf文件
    private Boolean tranPdf(CopyRightsVo copyRightsVo) {
    // 模板地址
        String filePath = UlegalZCUtil.rootPath() + File.separator + "pdf" + File.separator + "templateC.pdf";
        // 填完信息后生成新的模板地址
        String toPath = UlegalZCUtil.rootPath() + File.separator + "pdf" + File.separator + "templateOL" + ".pdf";
        try {
            System.out.println(filePath);
            PdfDocument pdfDoc = new PdfDocument(new PdfReader(filePath), new PdfWriter(toPath));
            PdfAcroForm pdfAcroForm = PdfAcroForm.getAcroForm(pdfDoc, true);
            pdfAcroForm.getField("fileName").setValue("小编");
            pdfAcroForm.getField("applicant").setValue("ol");
            Date date = new Date();
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("YYYY-MM-dd HH:mm:ss");
            String cmmitTime = simpleDateFormat.format(date);
            pdfAcroForm.getField("time").setValue(cmmitTime);
//            pdfAcroForm.getField("hashValue").setValue(copyRightsVo.getHashValue());
            pdfAcroForm.flattenFields();
            pdfDoc.close();
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
        return true;
    }

搞定收工。。。。

时间: 2024-11-05 22:44:00

根据现有PDF模板填充信息(SpringBoot)的相关文章

java之数据填充PDF模板

声明:由于业务场景需要,所以根据一个网友的完成的. 1.既然要使用PDF模板填充,那么就需要制作PDF模板,可以使用Adobe Acrobat DC,下载地址:https://carrot.ctfile.com/dir/11269771-27158812-194d66/29433907/ (使用特别破解版),安装步骤就省略了. 2.开始制作模板 a)使用wps制作一个表格,并转为PDF文件保存 b)使用Adobe Acrobat DC打开保存的PDF文件,然后搜索 "准备表单" ,点击

使用itext7简单的生成一个pdf,创建一个pdf模板并进行填充

下面这段代码,是显示中文字体的关键代码.如果之前学习使用itext 2*,5*和itextasian.jar.的,为了让这段代码生效一定都遇到Font 'STSongStd-Light' with 'UniGB-UCS2-H' is not recognized这个异常,查了很多资料,也试过很多方法. itext7 内置对中文(CJK字体)进行了支持,不在依赖其他组件.完美解决上述的异常. PdfFont font = PdfFontFactory.createFont("STSongStd-L

新知识:Java 利用itext填写pdf模板并导出(昨天奋战到深夜四点,知道今天两点终于弄懂)

废话少说,不懂itext干啥用的直接去百度吧. ***************制作模板******************* 1.先用word做出界面 2.再转换成pdf格式 3.用Adobe Acrobat 打开你刚刚用word转换成的pdf 会出现如下界面 下一步 点击浏览,选择刚才你转换好的pdf 下一步 4.打开后它会自动侦测并命名表单域,右键表单域,点击属性,出现文本域属性对话框,有的人说要改成中文字体,可是我没有改一样成功啦 5.一般情况下不需要修改什么东西,至少我没有修改哦 6.直

创建PDF模板,java添加内容、导出下载PDF

本文主要内容是:用java在pdf模板中加入数据,图片. 废话不多说,举个非常简单的例子: 首先创建word文档,导出PDF. 用 软件adobe acrobat打开,操作步骤如图: 在指定位置添加文本域, 保存退出.pdf模板创建完成,我们保存到 E:盘,起名叫 练习. 接下来是java内容. 在pom.xml文件加入, <!-- itext 图片转pdf --> <dependency> <groupId>com.itextpdf</groupId> &

iText编辑Pdf模板

本文讲述如何操作PDF模板生成PDF文件. 1.由Word 文档生成PDF模板 工具:Microsoft Office Word , AdobeAcrobat_2015.exe(安装好后是 Adobe Acrobat DC 程序) 根据已有的word文档,用Adobe Acrobat DC通过调用word文档创建表单,Adobe Acrobat DC会自动向word文档中的填写项生成文本域表单.这些表单就是要生成的PDF模板中要改变的值,不够的地方可动态添加文本域表单.将带文本域表单的文件保存为

在.net Core 使用PDF模板文件生成PDF文件,代替WEB打印控件!

这几天找WEB打印控件,要么收费的,要么免费的只能在IE里用! 我只想简单的打个标签纸!百度2天,看到一老兄说可以用PDF,然后又开始百度..找到了一篇文章 http://www.jianshu.com/p/d518d0988621    本文代码全部摘抄至这篇文章,发文只为记录! 不同的是我导入的库是iTextSharp.LGPLv2.Core.Fix 开始 一.先用word制作好模板文件,标签打印的话注意页边距,然后另存为PDF格式文件 二.然后下载adobe acrobat pro,创建时

freemarker作为PDF模板实现下载功能

freemarker 文件 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta> <title></title> <style type="text/css"> body { font-family

iTextSharp生成pdf含模板(一)---制作pdf模板

参考地址:https://www.cnblogs.com/ibeisha/p/itextsharp-pdf.html 一.使用场景:在线填写一些信息,根据对应的信息生成奖状. 二.解决方案 1.新建word文档,将其另存为pdf. 2.添加表单域(Adobe Acrobat软件) 用Adobe Acrobat打开pdf文件,点击工具---准备表单 点击开始 出现如下画面 对表单域进行编辑,可以重命名名称或者字体大小以及颜色 添加完整体效果如下: 可以点击预览查看效果,对字体大小进行查看设置  三

如何动态地给vSphere虚拟机模板注入信息

在做vSphere自动化安装过程中,遇到这样一个需求:将vCenter Server做成模板,在给用户自动化装好vSphere后, 下载vCenter Server模板并启动虚拟机,然后将vCenter Server的IP返回给用户,用户即可使用vSphere集群. 可是vCenter Server的IP不是固定的,而是在自动化安装vSphere集群请求到来时由网络模块分配并发送过来的,因 此在做vCenter Server模板时是无法写入某个IP的.那如果在vCenter Server虚拟机启