• 引言

最近开发遇到一个需求,公司法务给了一个word合同模板,需要替换里面的动态值为具体业务数据,然后生成pdf文件进行电子签章。

在网上找寻各种方法,发现很多都是需要特定工具,或者代码不全运行不起来,尝试了很多方法最后发现效果不是很好,所以记录下由word生成html模板,再转为pdf的方法。

该方法适用于合同、协议、报表等制式文档,用占位符替换动态值,支持if判断、支持list列表循环,通常用于线上签章和文件展示及文件服务器存储。html模板可以调整标签参数以避免生成的pdf样式失真、乱码。


  • 易模糊的概念

word模板:由公司法务提供的具有法律效益的word模板或由业务提供的终版样式的报表等word文档。(业务侧认为的模板)
        html模板:由word模板通过制作方法制成的将关键词替换为占位符或动态表达值的html文件。(开发侧认为的模板)
        pdf:通过代码将业务数据替换html模板里面的占位符,然后生成的pdf文件。


  • 操作步骤

1、按照资源中的生成html操作手册制作html模板。→资源在这里
        2、生成的模板支持放在项目本地,也支持放在运城OSS存储中。
        3、使用Java代码将业务数据替换占位符,然后生成pdf。
        4、若操作有疑问或碰到无法解决的问题,可在资源的README.md中找到博主的私人联系方式。

  • 公司法务提供的合同模板示例图

  • 生成的html模板示例

  • 由模板生成的pdf示例

  • 描述

    • 以上三张示例图在资源中,可以自行测试验证。
    • 通过第三张pdf的示例图,可以发现文档编写日期 和 收费标准有替换成动态值,而且样式没有乱码,也没有失真。
  • 资源内容
            1、word示例模板.docx
            2、word模板生成的html模板文件.html
            3、生成的pdf文件.pdf
            4、生成pdf的工程代码
            5、postman测试导出文件
            6、制作模板的全流程步骤教程(截图及注释说明)
            7、操作手册及代码示例地址在此:操作手册及代码示例传送门

Word制作生成html模板替换动态值为占位符使用Java转为pdf文件相关推荐

  1. 计算机网络试卷模板,用Word制作真实试卷模板(下)

    离寒假已近,老师们可能也开始考虑制作考试试卷了.因而今天咱们就来教大家如何用Word制作一个试卷模板. 相关文章:用Word制作真实试卷模板(上) 三.制作分栏页码 试卷分两栏打印,每栏下面都应有页码 ...

  2. 用Word制作真实试卷模板(转)

    用Word制作真实试卷模板(转)[@more@] 离寒假已近,老师们可能也开始考虑制作考试试卷了.因而今天咱们就来教大家如何用Word制作一个试卷模板. 一.设置页面 试卷通常使用B4纸.横向.分两栏 ...

  3. java pdf 转换 word_如何使用Java将pdf文件转换为word文件

    如何使用Java将pdf文件转换为word文件? 而且,它看起来像它一样容易吗? 解决方法: public class PDFTextReader { static String pdftoText( ...

  4. freemarker生成word文档,通过libreoffice完美转为pdf文件排版不乱(包含调用浏览器打印pdf)

    了解libreoffice的朋友都知道,freemarker是用xml生成的word文档,libreoffice打开这些文档会不兼容,会直接显示xml代码或排版差别很大,尤其是文档中包含一些复杂表格的 ...

  5. java导出pdf文件并下载_java根据模板生成pdf文件并导出

    1.首先需要依赖包:itext的jar包,我是maven项目,所以附上maven依赖 [html] view plain copy com.itextpdf itextpdf 5.5.10 [html ...

  6. Java Word文档如何转为PDF文件

    最近做的功能要求是Java 调用ftl模板生成Word文件,再将Word文件转为PDF 1.首先是ftl模板生成Word文件.Java 利用ftl模板生成Word用的技术是freemarker,相关技 ...

  7. java 将word转为pdf文件的两种方式【spire.doc.free】【documents4j】

    场景 如资产证明等场景下,一般要求同时生成word与pdf两种格式的证明文件,且两者格式需保持一致,可以各自单独生成,但那样可能需要维护两个模板文件,所以也可以仅定义一份word的模板文件,使用模板生 ...

  8. 如何用 Java 对 PDF 文件进行电子签章(五) 如何生成一个高清晰的签章

    参考: https://blog.csdn.net/javasun608/article/details/79307845    具体步骤: 由PDF模板生成一个PDF文件.加签章.由itext5 生 ...

  9. python将图片插入word文件的指定位置,并转为pdf文件

    1.需求说明 现需要做一份数据报告,报告中只需插入少量图片,其他部分的文字和格式不变,需要将图片插入word文件的指定位置,并最终生成一份pdf报告.注意:是基于已有word文件插入图片,不是创建wo ...

最新文章

  1. socket编程实践
  2. 数论基础--矩阵快速幂 及其例题
  3. layer.msg();怎么关闭
  4. eeglab教程系列(12)-使用ICA分解数据
  5. MyBatis逆向工程:根据table生成Model、Mapper、Mapper.xml
  6. Lync Server 2010 语音质量
  7. Centos下重要日志文件及查看方式
  8. java-HashMap源码学习
  9. 好用的idea插件,一个字:真TM太爽了!
  10. Win11任务栏怎么隐藏
  11. MapReduce案例一:天气温度
  12. A.457 - Linear Cellular Automata
  13. python 3.6.3 异常
  14. 亚马逊EC2构建代理服务器心血历程
  15. zookeeper安装与测试
  16. [20180604]在内存修改数据(bbed).txt
  17. 1. 从键盘输入一系列字符(以回车符结束,字符的个数不超过 200 个),统计输入字符串中数字与非数字字符的个数,并将计数结果输出。
  18. 如何成为一个很厉害的人(时间之尺)
  19. 技术水平真的很重要!技术详细介绍
  20. java基本类型val_Java的基本数据类型

热门文章

  1. 荣耀play4t能升级鸿蒙吗,荣耀30 Pro已开始测试华为鸿蒙HarmonyOS 2.0 荣耀Play4 Pro下月升级...
  2. Java方法的分类及使用
  3. keep-alive原理
  4. WOT干货大放送:大数据架构发展趋势及探索实践分享
  5. 「数字电子技术基础」2.数制和码制
  6. 交换机日志删除_如何查看交换机报警日志 并导出日志 命令是什么
  7. Conflux 树图区块链 “数字藏品 合约标准和编写规范
  8. android yuv旋转,针对移动端摄像头yuv旋转、裁剪、镜像、格式转换算法的实现
  9. itertools.groupby与pandas.groupby的异同
  10. LTE:信道质量,HARQ的比较