From 83b38e8d3b10cdbf9845aa8dbae4ff7729f4b795 Mon Sep 17 00:00:00 2001 From: CD <1103614279@qq.com> Date: Thu, 22 Dec 2022 16:49:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=BC=E5=87=BA=E6=96=87=E6=A1=A3=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E5=AF=B9=E5=BA=94=E4=B8=8A=E4=B8=8B=E8=A7=92=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarFileSplitItemsEOController.java | 56 ++++++++++++++++++- .../slrs/standardSplit/entity/SplitFont.java | 9 +++ 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/entity/SplitFont.java diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java index 112b4ca0..a7ee5512 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java @@ -270,6 +270,41 @@ public class SarFileSplitItemsEOController extends BaseController subList = new ArrayList<>(); + List supList = new ArrayList<>(); + boolean handleCorner = false; + if (content.contains("")) { + handleCornerMarkers(content, supList, "",""); + } + if (content.contains("")) { + handleCornerMarkers(content, subList, "",""); + } + if (subList.size() > 0 || supList.size() > 0) { + content = content.replaceAll("", ""); + content = content.replaceAll("", ""); + content = content.replaceAll("", ""); + //设置角标font + HSSFFont fontSub = workbook.createFont(); + fontSub.setTypeOffset(HSSFFont.SS_SUB); + HSSFFont fontSup = workbook.createFont(); + fontSup.setTypeOffset(HSSFFont.SS_SUPER); + + RichTextString richTextString = new HSSFRichTextString(content); + if (subList.size() > 0) { + for (SplitFont splitFont : subList) { + richTextString.applyFont(splitFont.getStartIndex(),splitFont.getEndIndex(),fontSub); + } + } + if (supList.size() > 0) { + for (SplitFont splitFont : supList) { + richTextString.applyFont(splitFont.getStartIndex(),splitFont.getEndIndex(),fontSup); + } + } + cell2.setCellValue(richTextString); + handleCorner = true; + } + if("TABLE".equals(valList.get(valRow).getValType())){ /* 连接跳转*/ CreationHelper createHelper = workbook.getCreationHelper(); @@ -287,7 +322,9 @@ public class SarFileSplitItemsEOController extends BaseController splitFontList, String label,String remove) { + content = content.replaceAll(remove, ""); + String[] split = content.split(label); + split[0] = split[0].replaceAll("", ""); + int index = split[0].length(); + for (int i = 1; i < split.length; i++) { + SplitFont splitFont = new SplitFont(); + String text = split[i]; + String cornerLabel = text.substring(0, text.indexOf("")); + splitFont.setStartIndex(index); + splitFont.setEndIndex(index + cornerLabel.length()); + splitFontList.add(splitFont); + text = text.replaceAll("", ""); + index = index + text.length(); + } + } + @ApiOperation(value = "|SarFileSplitItemsEO|导入") @PostMapping(value = "/importSplitItemsZip") public ResponseMessage importSplitItemsZip(@RequestParam(value = "file", required = false) MultipartFile file, diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/entity/SplitFont.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/entity/SplitFont.java new file mode 100644 index 00000000..6d032a21 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/entity/SplitFont.java @@ -0,0 +1,9 @@ +package com.adc.da.slrs.standardSplit.entity; + +import lombok.Data; + +@Data +public class SplitFont { + Integer startIndex; + Integer endIndex; +}