当前位置: 首页 > news >正文

做网站的书籍建设公司资质查询官网

做网站的书籍,建设公司资质查询官网,网页图片代码,wordpress建站系统视频教程1.PDF模板制作 准备原始模板 准备一个原始PDF模板,可以编辑好Word,预留出要填充的部分,再转换成PDF格式。 设置表单域 用任意PDF编辑器打开PDF模板文件,设置表单域,下面以WPS为例: 拖动文本域到需要填充的…
1.PDF模板制作
  • 准备原始模板

准备一个原始PDF模板,可以编辑好Word,预留出要填充的部分,再转换成PDF格式。

  • 设置表单域

用任意PDF编辑器打开PDF模板文件,设置表单域,下面以WPS为例:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

拖动文本域到需要填充的位置,调整区域大小和位置,然后双击设置文本域属性

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

此处我添加了3个文本域,分别是NAME(姓名)、GENDER(性别)、IDNUMBER(身份证号),然后保存即可。

2.相关依赖
<dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.1.2</version>
</dependency>
3.模板填充
package com.visy.utils;import com.itextpdf.text.pdf.AcroFields;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStamper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;/*** @author visy.wang* @date 2024/11/7 18:29*/
public class PdfUtil {private final static Logger logger = LoggerFactory.getLogger(PdfUtil.class);/*** PDF模板填充* @param tmplUrl 模板地址(可以是本地文件路径,也可以是Url)* @param targetFile 目标PDF(基于模板填充后的输出)* @param fieldMap 表单域(<表单域名称,表单域填充值>)*/public static void templateFill(String tmplUrl, File targetFile, Map<String, Object> fieldMap){ByteArrayOutputStream bos = null;FileOutputStream fos = null;try {PdfReader reader = new PdfReader(tmplUrl);PdfStamper ps = new PdfStamper(reader, bos = new ByteArrayOutputStream());AcroFields acroFields = ps.getAcroFields();//解决中文BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", false);acroFields.addSubstitutionFont(bfChinese);//模板表单域赋值Map<String, AcroFields.Item> fields = acroFields.getFields();for (Map.Entry<String, AcroFields.Item> field : fields.entrySet()) {String fieldName = field.getKey();if(Objects.nonNull(fieldName) && fieldMap.containsKey(fieldName)){Object fieldValue = fieldMap.get(fieldName);acroFields.setField(fieldName, Objects.isNull(fieldValue) ? "" : fieldValue.toString());}}ps.setFreeTextFlattening(true);ps.setFormFlattening(true);ps.close();fos = new FileOutputStream(targetFile);fos.write(bos.toByteArray());fos.flush();}catch (Exception e){logger.info("fillPdfTemplate error: {}", e.getMessage(), e);throw new RuntimeException(e.getMessage(), e);}finally {try{if(Objects.nonNull(fos)){fos.close();}if(Objects.nonNull(bos)){bos.close();}}catch(Exception e){logger.info("fillPdfTemplate close error: {}", e.getMessage(), e);}}}public static void main(String[] args) {String tmplUrl = "E:\\test\\pdf\\PDF测试模板.pdf";File targetFile = new File("E:\\test\\pdf\\目标PDF.pdf");Map<String,Object> fieldMap = new HashMap<>();fieldMap.put("NAME", "张三");fieldMap.put("GENDER", "男");fieldMap.put("IDNUMBER", "513126198803120435");//基于模板生成文件templateFill(tmplUrl, targetFile, fieldMap);System.out.println("生成完毕:"+targetFile.getAbsolutePath());}
}
4.控制台输出
生成完毕:E:\test\pdf\目标PDF.pdf
5.目标PDF

在这里插入图片描述

http://www.yayakq.cn/news/744326/

相关文章:

  • 珠海网站建设q479185700强涵怎么开发一个直播app
  • 写代码做网站需要多好的cpu西安网上注册公司流程
  • 网站流量指的是什么意思网站建设管理与维护
  • 自建站什么意思简单做网站需要学什么
  • 重庆网站推广报价app开发网站建设公司
  • 在线做汉字头像的网站哪个网站专门做二手电脑手机的
  • 做网站的公司哪家强免费获取ppt模板的网站
  • 富阳网站建设公司中国建设银行招聘
  • 如何做公司企业网站wordpress 采集小说
  • 网站建设方案交换认苏州久远网络招牌做的好的网站
  • 郑州网站推广招聘网站开发 微信开发 微信营销
  • 纯html5 网站企业网站定制开发一条龙全包
  • 网站上怎么做动画广告seo点击器
  • 制作外贸网站模板下载免费追剧软件app
  • 黄埔网站开发广州高端网站建设定制
  • 二级学院网站建设自评报告王者荣耀网页制作素材
  • 石家庄住房和城乡建设局网站WordPress首页站内搜索
  • 网站开发 高职课本网站后台发布了但看不见
  • 小说阅读网站开发wordpress 编辑插件
  • 用dw6做网站首页北京网站开发制作公司
  • asp电影网站源码秦皇岛城市建设网
  • 网站怎么做网站收录怎么样在公司配置服务器做网站
  • 网站首页的尺寸电子商务企业网站制作
  • 大连网页建站模板网站建设与优化标准
  • 学习电子商务网站建设与管理的收获6南昌网站设计专业
  • 怎么查询网站是什么时候做的中国软件公司排名100强
  • 海外建站服务平台wordpress识图搜索代码
  • 和谐校园网站建设北京住房和城乡建设厅官网
  • 建自己博客网站秦皇岛建设局官方网站
  • 广州华茂建设工程有限公司 网站wordpress外链图片