当前位置:首页 » 《关注互联网》 » 正文

Java填充PDF并返回填充后PDF文件及对应base64码

19 人参与  2024年09月07日 12:06  分类 : 《关注互联网》  评论

点击全文阅读


前期准备

下载PDF编辑工具(Adobe Acrobat 9 Pro):

在这里插入图片描述
可以主页关注小程序【白哥Java】回复【PDF编辑软件】即可获取 或者直接联系博主也可

在这里插入图片描述

主页如下:
在这里插入图片描述

软件使用流程

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此处流程为文本域流程 图片或其他大致相同
生成模板PDF样式如下:
在这里插入图片描述

代码开发

引入依赖

<dependency>            <groupId>com.itextpdf</groupId>            <artifactId>itextpdf</artifactId>            <version>5.5.13.2</version>        </dependency>        <dependency>            <groupId>com.itextpdf</groupId>            <artifactId>itext-asian</artifactId>            <version>5.2.0</version>        </dependency>

代码块

public static String editPdfAndGetBase64(String srcPdfPath, String destPdfPath) throws Exception {        PdfReader reader = new PdfReader("C:\\Users\\Administrator\\Downloads\\附2:电子处方文件参考模板-副本.pdf");        ByteArrayOutputStream baos = new ByteArrayOutputStream();        PdfStamper stamper = new PdfStamper(reader, baos);        AcroFields form = stamper.getAcroFields();        BaseFont bf = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);        form.addSubstitutionFont(bf);        form.setField("patientName", "周大炮");        form.setField("age", "24岁");        form.setField("prescriptionType", "普通\n处方");        form.setField("hisRegistorNo", "263002");        form.setField("hisPrescriptionNo", "HE920394223");        form.setField("recipeDate", "2024-08-14");        form.setField("department", "内分泌内科");        form.setField("sex", "男");        form.setField("icdName", "蚊媒介的病毒性发热,其他特指的");        form.setField("drugs","1.瑞格列奈片               2mg*30片/盒               4盒"+"\n"+"     用法用量:口服   每天3次   一次2片"+"\n");        stamper.setFormFlattening(true);        stamper.close();        reader.close();        // 将ByteArrayOutputStream的内容写入文件        try (FileOutputStream fos = new FileOutputStream("D:\\处方流转\\12.pdf")) {            fos.write(baos.toByteArray());        }        // 将ByteArrayOutputStream的内容转换为Base64字符串        byte[] pdfBytes = baos.toByteArray();        String encode = Base64Utils.encode(pdfBytes);        // 返回Base64字符串        return encode;    }

填充后文件样式

在这里插入图片描述


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/156617.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 咸鱼翻身从刷开始(柳如烟李诗琪)_咸鱼翻身从刷开始柳如烟李诗琪
  • 影帝求我别离婚,我转身去了对家列表_影帝求我别离婚,我转身去了对家(季淮顾言陆景行)
  • 点天灯后,偷我勋章的男友疯了(沈娇娇陆沉)_点天灯后,偷我勋章的男友疯了
  • 重生后,我让妻子后悔(云璟陆沈清)
  • 为了给我妈鸣冤,我在我爸六十大寿上毒翻全场(苏恒苏洛),为了给我妈鸣冤,我在我爸六十大寿上毒翻全场
  • 完结文老婆把女儿送给师弟练手后,后悔疯了列表_完结文老婆把女儿送给师弟练手后,后悔疯了(沈安姜向玉)
  • 白月光守寡后,夫君要纳她为妾留青赵恒完本_白月光守寡后,夫君要纳她为妾(留青赵恒)
  • 全书浏览妻子叫我转八十万给实习生(顾祁秦冉)_妻子叫我转八十万给实习生(顾祁秦冉)全书结局
  • 全文男友拿我的生活费给我开亲密付(夏染陈政)列表_全文男友拿我的生活费给我开亲密付
  • 大数据助力,我把妈妈告上法庭欣欣妈妈完本_大数据助力,我把妈妈告上法庭(欣欣妈妈)
  • 年薪百万后,我主动要求给穷光蛋生儿子(李明李小花)全书浏览_年薪百万后,我主动要求给穷光蛋生儿子全书浏览
  • 全书浏览年薪百万后,我主动要求给穷光蛋生儿子(李明李小花)_年薪百万后,我主动要求给穷光蛋生儿子(李明李小花)全书结局

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1