java使用Abobe Acrobat DC生成模板
一、利用word生成一個(gè)文檔轉(zhuǎn)成pdf

說(shuō)明:轉(zhuǎn)換成pdf格式
二、Abobe Acrobat DC圖解
利用Abobe Acrobat DC打開(kāi)pdf
步驟:文件 ---->創(chuàng)建------>創(chuàng)建表單----->選擇文件(你轉(zhuǎn)換成pdf文件)
這里是所要增加的文本域、圖片域等功能按鈕

在你需要的位置增加你說(shuō)要的功能完成之后進(jìn)行保存

三、java后臺(tái)代碼
環(huán)境maven
<dependency> <groupId>com.itextpdf</groupId> <artifactId>itext7-core</artifactId> <version>7.1.13</version> <type>pom</type> </dependency>
生成的模板文件放到適當(dāng)?shù)奈恢?/strong>

所需要生成新的pdf代碼
public @ResponseBody Object getFaceVerificationPdf(GzFaceVerification gzFaceVerification, HttpServletRequest request) throws IOException {
try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) {
try (PdfDocument document = new PdfDocument(new PdfReader(
new ClassPathResource("static/moban.pdf").getInputStream()), new PdfWriter(outputStream))) {
PdfAcroForm pdfAcroForm = PdfAcroForm.getAcroForm(document, true);
//對(duì)圖片進(jìn)行處理(如果不處理在模板中顯示不出圖片)
PdfFormField pdfFormField = pdfAcroForm.getField("frontIdCardUrl");
InputStream is = new FileInputStream(new File(gzFaceVerification.getFrontIdCardUrl()));
String str = Base64.encodeBytes(StreamUtil.inputStreamToArray(is));
pdfFormField.setValue(str);
pdfAcroForm.addField(pdfFormField);
PdfFormField pdfFormField1 = pdfAcroForm.getField("reverseIdCardUrl");
InputStream is1 = new FileInputStream(new File(gzFaceVerification.getReverseIdCardUrl()));
String str1 = Base64.encodeBytes(StreamUtil.inputStreamToArray(is1));
pdfFormField1.setValue(str1);
pdfAcroForm.addField(pdfFormField1);
PdfFormField pdfFormField2 = pdfAcroForm.getField("photo");
InputStream is2 = new FileInputStream(new File(gzFaceVerification.getPhoto()));
String str2 = Base64.encodeBytes(StreamUtil.inputStreamToArray(is2));
pdfFormField2.setValue(str2);
pdfAcroForm.addField(pdfFormField2);
pdfAcroForm.getField("frontIdCardUrl").setValue(gzFaceVerification.getFrontIdCardUrl());
pdfAcroForm.getField("reverseIdCardUrl").setValue(gzFaceVerification.getReverseIdCardUrl());
pdfAcroForm.getField("photo").setValue(gzFaceVerification.getPhoto());
pdfAcroForm.getField("comparisonResults").setValue(gzFaceVerification.getComparisonResults());
pdfAcroForm.getField("createTime").setValue(gzFaceVerification.getCreateTime());
pdfAcroForm.flattenFields();
}
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setContentType(MediaType.APPLICATION_PDF);
httpHeaders.setContentDispositionFormData("attachment", "test.pdf", Charset.forName("UTF-8"));
return ResponseEntity.ok().headers(httpHeaders).body(outputStream.toByteArray());
}
}
到此這篇關(guān)于java使用Abobe Acrobat DC生成模板的文章就介紹到這了,更多相關(guān)Abobe Acrobat DC生成模板內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- java自動(dòng)生成編號(hào)的實(shí)現(xiàn)(格式:yyMM+四位流水號(hào))
- Java 生成帶Logo和文字的二維碼
- java高并發(fā)情況下高效的隨機(jī)數(shù)生成器
- 超簡(jiǎn)潔java實(shí)現(xiàn)雙色球若干注隨機(jī)號(hào)碼生成(實(shí)例代碼)
- 使用cmd根據(jù)WSDL網(wǎng)址生成java客戶端代碼的實(shí)現(xiàn)
- Java使用iTextPDF生成PDF文件的實(shí)現(xiàn)方法
- Eclipse+Java+Swing實(shí)現(xiàn)學(xué)生成績(jī)管理系統(tǒng)的實(shí)例代碼
- Java基于Javafaker生成測(cè)試數(shù)據(jù)
- 教你如何用Java根據(jù)日期生成流水號(hào)
相關(guān)文章
Java工程編碼格式由GBK轉(zhuǎn)化成utf-8的具體實(shí)現(xiàn)
在寫項(xiàng)目的過(guò)程中我發(fā)現(xiàn)有的地方編碼格式被設(shè)置成了 gbk 如果用eclipse等工具直接改回utf-8編碼格式則會(huì)出現(xiàn)亂碼,所以本文給大家介紹了Java工程編碼格式由GBK轉(zhuǎn)化成utf-8的具體實(shí)現(xiàn),感興趣的朋友可以參考下2024-05-05
JVM內(nèi)存結(jié)構(gòu)相關(guān)知識(shí)解析
這篇文章主要介紹了JVM內(nèi)存結(jié)構(gòu)相關(guān)知識(shí)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
JAVA操作HDFS案例的簡(jiǎn)單實(shí)現(xiàn)
本篇文章主要介紹了JAVA操作HDFS案例的簡(jiǎn)單實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
詳解RocketMQ 消費(fèi)端如何監(jiān)聽(tīng)消息
這篇文章主要為大家介紹了RocketMQ 消費(fèi)端如何監(jiān)聽(tīng)消息示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
java swing 實(shí)現(xiàn)加載自定義的字體
這篇文章主要介紹了java swing 實(shí)現(xiàn)加載自定義的字體,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
spring cloud如何修復(fù)zuul跨域配置異常的問(wèn)題
最近的開(kāi)發(fā)過(guò)程中,使用spring集成了spring-cloud-zuul,在配置zuul跨域的時(shí)候遇到了問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于spring cloud如何修復(fù)zuul跨域配置異常的問(wèn)題,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-09-09
關(guān)于SpringBoot創(chuàng)建存儲(chǔ)令牌的媒介類和過(guò)濾器的問(wèn)題
這篇文章主要介紹了SpringBoot創(chuàng)建存儲(chǔ)令牌的媒介類和過(guò)濾器的問(wèn)題,需要在配置文件中,添加JWT需要的密匙,過(guò)期時(shí)間和緩存過(guò)期時(shí)間,具體實(shí)例代碼參考下本文2021-09-09

