Java代码生成pdf回执文件,直接上代码:

package com.pdf;import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.HashMap;import org.xhtmlrenderer.pdf.ITextRenderer;import com.lowagie.text.DocumentException;
import com.lowagie.text.pdf.BaseFont;import freemarker.template.Configuration;
import freemarker.template.Template;public class PdfHandler {private static final String CONTRACT = "resource/contract/";//合同文件存储路径private static final String TEMPLATE = "resource/templates/";//模板存储路径private static final String PDFNAME = "pdfDemo";//pdf文件名private static final String HTMLNAME = "pdfDemo";//html文件名public static void contractHandler(String templateName,HashMap paramMap) throws Exception{// 获取本地模板存储路径、合同文件存储路径String templatePath = TEMPLATE;String contractPath = CONTRACT;// 组装html和pdf合同的全路径URLString localHtmlUrl = contractPath + HTMLNAME + ".html";String localPdfPath = contractPath + "/";// 判断本地路径是否存在如果不存在则创建File localFile = new File(localPdfPath);if (!localFile.exists()) {localFile.mkdirs();}String localPdfUrl = localFile + "/" + PDFNAME + ".pdf";templateName=templateName+".ftl";htmHandler(templatePath, templateName, localHtmlUrl, paramMap);// 生成html合同pdfHandler(localHtmlUrl, localPdfUrl);// 根据html合同生成pdf合同deleteFile(localHtmlUrl);// 删除html格式合同System.out.println("PDF生成成功");}/*** 生成html格式合同*/private static void htmHandler(String templatePath, String templateName,String htmUrl, HashMap paramMap) throws Exception {Configuration cfg = new Configuration();cfg.setDefaultEncoding("UTF-8");cfg.setDirectoryForTemplateLoading(new File(templatePath));Template template = cfg.getTemplate(templateName);File outHtmFile = new File(htmUrl);Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outHtmFile)));template.process(paramMap, out);out.close();}/*** 生成pdf格式合同*/private static void pdfHandler(String htmUrl, String pdfUrl)throws DocumentException, IOException {File htmFile = new File(htmUrl);File pdfFile = new File(pdfUrl);String url = htmFile.toURI().toURL().toString();OutputStream os = new FileOutputStream(pdfFile);org.xhtmlrenderer.pdf.ITextRenderer renderer = new ITextRenderer();renderer.setDocument(url);org.xhtmlrenderer.pdf.ITextFontResolver fontResolver = renderer.getFontResolver();// 解决中文支持问题fontResolver.addFont(TEMPLATE+"simsun.ttc",BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);renderer.layout();renderer.createPDF(os);os.close();}/*** 删除文件*/private static void deleteFile(String fileUrl) {File file = new File(fileUrl);file.delete();}public static void main(String[] args) throws Exception {String templateName = "201";HashMap paramMap = new HashMap<>();paramMap.put("ZJHKZH", "271003********279975");paramMap.put("KYYE", "79244.95");paramMap.put("LXFS", "配置web.xml中LXFS属性,例如(张小凡,123,4567,8909)");paramMap.put("KHWD", "2****1");paramMap.put("CSKSRQ", "2016年10月31日00时00分");paramMap.put("KSRQ", "2017-03-14");paramMap.put("YE","94444.95");paramMap.put("KHZH","271**********07279975");paramMap.put("AH", "(2015)****字第0***0号");paramMap.put("CKH", "(2017)法YH****9控字第*号");paramMap.put("YDJAH", "(2015)***执字第00020号");paramMap.put("KZCS", "01");paramMap.put("XM", "張三豐");paramMap.put("FYMC", "****人民法院");paramMap.put("JSRQ", "2017-06-14");paramMap.put("KZZT", "1");paramMap.put("SE", "100");paramMap.put("LCZH", "987234234");paramMap.put("DATE", "2017年03月24日09时39分");paramMap.put("CKWH", "(2015)*****字第0**20-1**0号裁定书");paramMap.put("SKSE", "100");paramMap.put("CSJSRQ", "2016年10月31日 00时00分");contractHandler(templateName, paramMap);}
}

Demo工程截图:

Demo工程链接:点击打开工程连接

Java通过freemarker生成pdf文件并盖章相关推荐

  1. HTML生成PDF模板(Java iText+FreeMarker生成PDF(HTML转PDF))

    Java iText+FreeMarker生成PDF(HTML转PDF) 1.背景 在某些业务场景中,需要提供相关的电子凭证,比如网银/支付宝中转账的电子回单,签约的电子合同等.方便用户查看,下载,打 ...

  2. java用itextPDF生成PDF文件保存至本地并上传至ftp服务器

    标题java用itextPDF生成PDF文件保存至本地并上传至ftp服务器 所需jar :itext-asian-5.2.0.jar,itextpdf-5.5.5.jar,commons-net-3. ...

  3. java 生成字体文件,java使用itext生成pdf文件-设置字体,itextpdf,import com.l

    java使用itext生成pdf文件-设置字体,itextpdf,import com.limport com.lowagie.text.Document;import com.lowagie.tex ...

  4. java根据模板生成pdf文件并导出(iText)

    java根据模板生成pdf文件并导出 首先你的制作一个pdf模板: 1.先用word做出模板界面 2.文件另存为pdf格式文件 3.通过Adobe Acrobat pro软件打开刚刚用word转换成的 ...

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

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

  6. java在linux生成pdf文件,从 Java 应用程序动态生成 PDF 文件

    简介: 如果您的应用程序需要动态生成 PDF 文档,那么您需要 iText 库.开源的 iText 库使得 PDF 的创建变得轻松易行.本文介绍了 iText 并提供了一个使用它从 Java 技术应用 ...

  7. Java使用itextpdf生成PDF文件,用浏览器下载

    浏览器下载生成PDF文件 1.引入jar包 <dependency><groupId>com.itextpdf</groupId><artifactId> ...

  8. Java根据模板生成pdf文件并导出

    原文地址:http://blog.csdn.net/TOP__ONE/article/details/65442390 首先你的制作一个pdf模板: 1.先用word做出模板界面 2.文件另存为pdf ...

  9. Java使用freemarker生成word文件

    首先声明我的项目是一个web项目,生成的word文件直接通过response响应发送给前端.如果不是web项目的话可以像网上的其他教程一样将生成的word保存在本地. 要利用freemarker生成w ...

最新文章

  1. 动态规划 4、基础背包问题总结(多重背包与多重背包的转化)
  2. 姚班大神陈立杰最新动向:MIT毕业后将进入诺奖摇篮,成为UC伯克利Miller研究员...
  3. MyEclipse Build path contains duplicate entry
  4. R语言对用电负荷时间序列数据进行K-medoids聚类建模和GAM回归
  5. Libusb开发教程三 USB设备程序开发
  6. 每个程序员都该学习的5种开发语言,不可错过!
  7. Apaceh配置httpd-vhosts虚拟主机
  8. Rx:4-[编外篇] .NET4里的Concurrent Collections
  9. Kali Linux 网络扫描秘籍 第六章 拒绝服务(一)
  10. Microsoft Productivity Hub 2010 安装部署配置(三)
  11. Oracle数据库下载与安装(Windows)
  12. ArcGIS:如何对要素类进行查询要素属性、更改符号、标记?
  13. flutter压缩图片上传
  14. irr内部收益率php,内部收益率(IRR)
  15. PCL中采样一致性算法
  16. Android最新API获取北斗卫星定位信息(全网最新)
  17. 第23章 向碧蓝的苍穹致敬——三维天空的构建
  18. 安卓项目查手机电量功能_安卓手机也能像苹果一样!这一招教你如何查看手机电池损耗...
  19. 基于vue,安装vux-ui步骤
  20. 大学生职业生涯规划——我的未来我做主

热门文章

  1. RGB 色彩表(tkinter使用,色彩名称,十六进制名称)
  2. 油液颗粒计数器在工业自动化进程中带来的巨大效益
  3. python-web自动化测试-验证码的处理(通过记录cookie,实现自动登录)
  4. 5G,一场商业噱头 or 一次技术革命?
  5. ahocorasick库 (匹配字符串 python)
  6. 烟台汽车产业提速 上汽通用东岳基地产值逾5000亿
  7. 自己在服务端搭建git库,在客户端使用git push出现remote rejected的解决方案
  8. 编程语言BASIC程序员的启蒙语言
  9. 华为任正非:从两万到千亿的创业故事
  10. 英伟达这篇CVPR 2022 Oral火了!2D图像秒变逼真3D物体!虚拟爵士乐队来了!