1制作好自己的pdf模版,我这里是通过wps把word转换成pdf文件

2下载Adobe Acrobat DC工具来制作pdf的模板

以上就是怎么制作pdf文件的模版

3引入maven 依赖

<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>

4编写接口

/*** 根据计划单ID查找到当条订单,并生成PDF返回给前台*  请忽略我的根据id查询,根据自己的情况来决定来查询自己的数据* @param id* @param response* @return*/public Result<Object> downloadPDFFile(@PathVariable("id") String id, HttpServletResponse response) {try {ResponseSalesApplyList applyList = salescustomerapplylistservice.selectDetailById(id);String templatePath = "/Users/apple/Desktop/test.pdf";//制作好的PDF模版路径PdfReader reader;FileOutputStream out = null;PdfReader pdfReader = null;ByteArrayOutputStream bos = null;PdfStamper stamper;int page = 1;List<PdfReader> list = new ArrayList();reader = new PdfReader(templatePath);bos = new ByteArrayOutputStream();stamper = new PdfStamper(reader, bos);AcroFields form = stamper.getAcroFields();//这个form就是pdf里面的表单key就是pdf的键 value 就是往里面要放的值form.setField("studentNum", "001");form.setField("name", "张三");form.setField("subject", "语文");form.setField("score", "98");//true代表生成的PDF文件不可编辑ServletOutputStream servletOutputStream = response.getOutputStream();stamper.setFormFlattening(true);stamper.close();pdfReader = new PdfReader(bos.toByteArray());list.add(pdfReader);Document doc = new Document();PdfCopy copy = new PdfCopy(doc, response.getOutputStream());doc.open();for (int k = 0; k < list.size(); k++) {PdfReader pdfReader1 = list.get(k);doc.newPage();copy.addDocument(pdfReader1);}copy.close();return Result.success("返回成功!");} catch (Exception e) {e.printStackTrace();return Result.error(ResultMsg.EXECUTE_ERROR.fillArgs(e.getMessage()));}}

5 接口测试

希望可以帮助到大家...

springboot生成PDF文件返回给前台相关推荐

  1. SpringBoot 生成pdf文件(含报表)

    使用 iText 导出pdf表格 iText 是一种生成PDF报表的Java组件,其maven依赖如下: <dependency><groupId>com.itextpdf&l ...

  2. jsPDF生成PDF文件,文件不全问题,后台进行文件下载,前台不下载

    我是前端使用jsPDF进行生成PDF文件,使用Base64进行加密,解密:后台进行文件流下载 1.前端使用jsPDF和html2canvas进行生成PDF文件(当然有这同样的毛病,生成时候有滚动条的情 ...

  3. springboot 基于.ftl模板生成pdf文件

    目录 Demo前置简述 生成pdf内容 项目结构 主要实现 api测试 完整代码地址 Demo前置简述 实现功能:用户个人信息测试数据加上ftl模板得到html字符串,然后根据html字符串生成pdf ...

  4. SpringBoot+Vue+mybatis生成pdf文件(表头跟页码,适应上传linux服务器后的操作)

    SpringBoot+Vue+mybatis生成pdf文件(表头跟页码,适应上传linux服务器后的操作) 为什么使用后端去生成 说明 依赖 后端目录 控制器代码 模板代码 前端代碼 最終效果 为什么 ...

  5. springboot根据模板生成pdf文件

    前言 最近碰到一个需求,给定一个word/pdf的模板,生成pdf文件,包含pdf文件之间的合并等操作.试了很多种方法(也可能是本人比较菜的原因),只有下面这个方法走通了,做下记录. 文件生成 1 准 ...

  6. java使用world模板动态生成PDF文件

    根据项目需求,需要用到一个功能,根据页面参数需要动态的生成一个world,并将world生成两份PDF文件,一份正式文件,一份临时的电子文件(带有二维码,扫描可以下载正式文件的电子版本).同时上传到文 ...

  7. 如何动态生成pdf文件?

    pdfService系统 一. 背景 在许多开发需求中都有动态生成pdf文件的需求,例如根据已有的json字符串渲染到一个表格中,然后生成对应的PDF文档,以往的解决方法是调用许多个接口生产pdf文件 ...

  8. java调用wkhtmltopdf生成pdf文件,美观,省事

    最近项目需要导出企业风险报告,文件格式为pdf,于是搜了一大批文章都是什么Jasper Report,iText ,flying sauser ,都尝试了一遍,感觉不是我想要的效果, 需要自己调整好多 ...

  9. Itext生成pdf文件,itext+Freemarker生成pdf,(中文空白解决)

    来源:https://my.oschina.net/lujianing/blog/894365 1.背景 在某些业务场景中,需要提供相关的电子凭证,比如网银/支付宝中转账的电子回单,签约的电子合同等. ...

最新文章

  1. 使用 Inception-v3,实现图像识别(Python、C++)
  2. php 數組重組,php數組的重組及多級下拉菜單
  3. linux下的last以及lastb命令
  4. CentOS 升级PHP
  5. psp能装安卓软件吗_客户crm 软件能定制吗
  6. 如何让“GMV下降”实现自动化分析?
  7. (转)用Java获得当前性能信息
  8. 耍了一下 UncaughtErrorEvents
  9. 22. 切勿直接修改set或multiset中的键
  10. 计算机正向着巨型化,目前计算机正向着巨型化、()、网络化、智能化方向发展。...
  11. Mac fliqlo 时钟屏保
  12. 智能家居的新想法(2022)
  13. linux 搭建离线下载文件,不经意间用wget给自己搭建了一个离线下载服务器
  14. matlab在c盘有缓存文件夹吗,win10如何清除C盘缓存文件-win10清除C盘缓存的方法 - 河东软件园...
  15. svg 地图 及path的渲染
  16. Skywalking链路追踪自身耗时和总耗时算法分析
  17. 数据分析能力的8个等级
  18. 美团支付宝互探腹地 相爱相杀再度升级
  19. 西铁城CL-S631无法打印,打印测试空白
  20. Android电视kodi安装失败,电视提示“解析包出现错误” ?四种方法教你轻松解决...

热门文章

  1. 携手内马尔发布智能新品,TCL加快全球化步伐
  2. [转载]《武林外传》每一集都教会我们一个道理
  3. Qmail+vpopmail+daemontools+ucspi邮件系统安装及其SMTP认证配置
  4. 威漫哨兵机器人_漫威中实力最强的五大机器人,哨兵机器人能够团灭变种人!...
  5. php为什么被叫做拍黄片 故事起因
  6. 眉山市职称计算机成绩,眉山市2014年第2次(4月份)全国职称计算机考试成绩.doc
  7. 如何避免编程从入门到放弃?
  8. cocos creator 打包ios 构建失败
  9. 如何下载安装和使用 Office 2016的中文语言包?
  10. Crypto 学习第二天