From 6a4e3a5c4c34fdef0accc93d8a077ab016d15250 Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期二, 15 七月 2025 18:01:23 +0800 Subject: [PATCH] pdf以及登记身份证人像处理 --- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | 68 +++++++++++++++++++++++++++------- 1 files changed, 54 insertions(+), 14 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java index d4f3bc1..bb465d7 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java @@ -1847,6 +1847,44 @@ acroFields.setField(key, hashMap.get(key)); } pdfStamper.setFormFlattening(true); + + String isOpenSfzImg = sysConfigService.selectConfigByKey("pdf_isOpenSfzImg"); + String pathSfzfilePath = sysConfigService.selectConfigByKey("path_sfzfilePath"); + if (StrUtil.isNotBlank(isOpenSfzImg) && isOpenSfzImg.equalsIgnoreCase("y")){ + if (StrUtil.isNotBlank(pathSfzfilePath)){ + String key = DataSourceContextHolder.getDataSourceKey(); + key = key.replace("ltkjpeis10_",""); + if (new File(pathSfzfilePath + File.separator + key + File.separator+customer.getCusId()+".png").exists()) { + String pdfSfzimgwidth = sysConfigService.selectConfigByKey("pdf_sfzimgwidth"); + String pdfSfzimgheight = sysConfigService.selectConfigByKey("pdf_sfzimgheight"); + String pdfSfzimgy = sysConfigService.selectConfigByKey("pdf_sfzimgy"); + String pdfSfzimgx = sysConfigService.selectConfigByKey("pdf_sfzimgx"); + int width = 100,height = 100,x = 90,y = 180; + if (StrUtil.isNotBlank(pdfSfzimgwidth)) { + width = Integer.parseInt(pdfSfzimgwidth); + } + if (StrUtil.isNotBlank(pdfSfzimgheight)) { + height = Integer.parseInt(pdfSfzimgheight); + } + if (StrUtil.isNotBlank(pdfSfzimgy)) { + y = Integer.parseInt(pdfSfzimgy); + } + if (StrUtil.isNotBlank(pdfSfzimgx)) { + x = Integer.parseInt(pdfSfzimgx); + } + Image image = Image.getInstance(pathSfzfilePath + File.separator + key + File.separator+customer.getCusId()+".png"); + // 璁剧疆鍥剧墖浣嶇疆鍜屽ぇ灏� + // image.setAbsolutePosition(90, 190); // 琛ㄥ崟宸﹁竟 + // image.setAbsolutePosition(495, 742); // 鍙充笂瑙� + // image.setAbsolutePosition(250, 50); // 涓笅 + image.setAbsolutePosition(x, y); + image.scaleAbsolute(width, height); // 璁剧疆鍥剧墖瀹藉害鍜岄珮搴� + PdfContentByte content = pdfStamper.getOverContent(1); + content.addImage(image); + } + } + } + pdfStamper.close(); reader4.close(); // 灏嗕慨鏀瑰悗鐨凱DF鍐呭鍐欏叆 @@ -2345,17 +2383,17 @@ if (StrUtil.isNotBlank(value.get(0).getSj())) { pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細"); document1.add(pp); - ppp = new Paragraph(value.get(0).getSj(), remarkFonts); + ppp = new Paragraph(value.get(0).getSj().replaceAll("\n",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); } - pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ彁绀猴細"+value.get(0).getTs()); - document1.add(pp); -// ppp = new Paragraph(value.get(0).getTs(), remarkFonts); -// paragraph.setAlignment(Element.ALIGN_LEFT); -// paragraph.setLeading(5f); -// document1.add(ppp); +// pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ彁绀猴細"+value.get(0).getTs().replaceAll("\n","")); +// document1.add(pp); + ppp = new Paragraph("妫�鏌ユ彁绀猴細"+value.get(0).getTs().replaceAll("\n",""), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); } else { if (value.get(0).getPid().equals("1862852701533012001")) { remarkFonts = PdfUtils.setFont(DEFAULT_FONT_SIZE); @@ -2536,7 +2574,7 @@ if (StrUtil.isNotBlank(value.get(0).getSj())) { pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細"); document1.add(pp); - ppp = new Paragraph(value.get(0).getSj(), remarkFonts); + ppp = new Paragraph(value.get(0).getSj().replaceAll("\n",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -2545,7 +2583,8 @@ if (StrUtil.isNotBlank(value.get(0).getSj()) || StrUtil.isNotBlank(value.get(0).getProResult())) { pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細"); document1.add(pp); - ppp = new Paragraph(value.get(0).getSj() != null ? value.get(0).getSj() : value.get(0).getProResult(), remarkFonts); + ppp = new Paragraph(value.get(0).getSj() != null ? value.get(0).getSj().replaceAll("\n","") + : value.get(0).getProResult().replaceAll("\n",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -2555,7 +2594,8 @@ // document1.add(pp); pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ彁绀猴細"); document1.add(pp); - ppp = new Paragraph((value.get(0).getTs() != null ? value.get(0).getTs() : value.get(0).getProResult()), remarkFonts); + ppp = new Paragraph((value.get(0).getTs() != null ? value.get(0).getTs().replaceAll("\n","") + : value.get(0).getProResult().replaceAll("\n","")), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -2596,7 +2636,7 @@ paragraph.setLeading(5f); document1.add(ppp); if (StrUtil.isNotBlank(entry.getKey().getRemark())) { - ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark().replaceAll("null",""), remarkFonts); + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark().replaceAll("null","").replaceAll("\n",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -3229,7 +3269,7 @@ TjProject tjProjectq = projectService.getById(tjOrderDetail.getProject().getProParentId()); TjPdfVO tjPdfVO = new TjPdfVO(); tjPdfVO.setProName(tjOrderDetail.getProject().getProName()); - tjPdfVO.setProResult(tjOrderDetail.getProResult()); + tjPdfVO.setProResult(tjOrderDetail.getProResult()==null ? null : tjOrderDetail.getProResult().replaceAll("\n","").replaceAll(" ","")); tjPdfVO.setExc(tjOrderDetail.getExceptionDesc()); if (null != tjProject.getProMetering()) { tjPdfVO.setCompany(tjProject.getProMetering()); @@ -3254,8 +3294,8 @@ if(StringUtil.isNotBlank(yxbx)) yxbx = yxbx.replaceAll(regex, "\n$0"); if(StringUtil.isBlank(bgNr)) bgNr = ""; if(StringUtil.isBlank(yxbx)) yxbx = ""; - tjPdfVO.setTs(yxbx); - tjPdfVO.setSj(bgNr); + tjPdfVO.setTs(yxbx.replaceAll("\n","").replaceAll(" ","")); + tjPdfVO.setSj(bgNr.replaceAll("\n","").replaceAll(" ","")); tjPdfVO.setShys(jcbgd.getShysxm()); tjPdfVO.setProName(jcbgd.getXmmc()); ids += "|" + jcbgd.getXmdm(); -- Gitblit v1.8.0