java使用Abobe Acrobat DC生成模板

2021-05-20 0 384

一、利用word生成一个文档转成pdf

java使用Abobe Acrobat DC生成模板

说明:转换成pdf格式

二、Abobe Acrobat DC图解

利用Abobe Acrobat DC打开pdf

步骤:文件 —->创建——>创建表单—–>选择文件(你转换成pdf文件)

这里是所要增加的文本域、图片域等功能按钮

java使用Abobe Acrobat DC生成模板

在你需要的位置增加你说要的功能完成之后进行保存

java使用Abobe Acrobat DC生成模板

三、java后台代码

环境maven

<dependency>
			<groupId>com.itextpdf</groupId>
			<artifactId>itext7-core</artifactId>
			<version>7.1.13</version>
			<type>pom</type>
		</dependency>

生成的模板文件放到适当的位置

java使用Abobe Acrobat DC生成模板

所需要生成新的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);
                    //对图片进行处理(如果不处理在模板中显示不出图片)
                    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());
        }
    }

到此这篇关于java使用Abobe Acrobat DC生成模板的文章就介绍到这了,更多相关Abobe Acrobat DC生成模板内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!

遇见资源网 JAVA java使用Abobe Acrobat DC生成模板 http://www.ox520.com/20900.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务