任务书、期中检查、延期申请书
一、需要用到的支持
包支持:向java工程导入两个包iText.jar,iTextAsian.jar(汉字支持包)
软件支持:Adobe Acrobat Pro,word
二、思想:
1、先用word文档画出相应的表格表单模板
2、将对应的word表格文档转换成pdf
①在word文档功能导航栏选择文件
点击pdf打印
即能生成对应word表格对应的pdf文档
②或是直接对word文档右击选择生成pdf文档
3、利用acrobat软件把转换过来的pdf文档制作成有相应表单域的表单模板
在导航栏选择“视图”里面的“工具”里面的“表单”,在右边出现的工具栏里选择“表单“里的”编辑“,双击对应的表单域,出现”文本域属性”对话框,开始对表单域进行自定义设置。
注意字体设置不要设置为自动,避免表格不同栏字体大小会因字体数目而改变
相关的一个帖子
注意此处的域名应该要和你在java代码中给每个域设置值所对应的参数名相同
设置的相关属性的特点详见下面的链接
/zh_CN/acrobat/using/WSC9CAD508-1941-43db-B599-2DCBF7BFC055.w.html#WS52046eb015073c7039db607f13a5363f51b-8000
4、利用java编写去填充对应表单域的数据
midCheckFields(session,fields);和delayReplayFields(session,fields);实现相似
在对应的controller里调用PdfUtil中的pdfTempleToPdf方法
然后在对中期报告书内容进行”增删改查“操作的方法里调用createPDF,即在保存好中期报告书内容的同时就生成了对应的pdf文档
在利用下载pdf文档的方法下载文档
三、异常问题
①Font'STSong-Light' with 'UniGB-UCS2-H' is not recognized.
字体异常问题,有可能是导入的包有问题,因为出错太多次,忘记是怎么解决的了
曾经查找过的相关的解决办法:
/wang12/article/details/5661106
/blog/2098423
②Exception:PDFheadersignaturenotfound.
java.io.IOException:PDFheadersignaturenotfound.
/community/forums/thread/344724/java.io.ioexception-java.io.ioexception-pdf-header-signature-error.aspx
或是,通过他们有一些启发
java -How to solve pdf header signature not found error? - Stack Overflow
这个问题也出现很多次,网上的解决办法都解决不了
最后我发现时word生成的对应的pdf文档损坏了,重新生成pdf文档就解决了。应该是只有出现这个异常就是模板pdf的问题了。