From a0e46f7f776b6c4526e9596fb0ee0ad51e8340cf Mon Sep 17 00:00:00 2001 From: 6c <420680616@qq.com> Date: 星期四, 16 十一月 2023 18:10:51 +0800 Subject: [PATCH] 打印模板支撑图片,使用& --- src/main/java/com/product/print/service/PrintRealizeService.java | 18 +++++++++++------- 1 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/product/print/service/PrintRealizeService.java b/src/main/java/com/product/print/service/PrintRealizeService.java index 4687f24..3839b51 100644 --- a/src/main/java/com/product/print/service/PrintRealizeService.java +++ b/src/main/java/com/product/print/service/PrintRealizeService.java @@ -11,7 +11,6 @@ import com.deepoove.poi.data.TextRenderData; import com.deepoove.poi.data.style.Style; import com.deepoove.poi.render.RenderContext; -import com.deepoove.poi.util.RegexUtils; import com.product.common.lang.StringUtils; import com.product.core.cache.DataPoolCacheImpl; import com.product.core.config.Global; @@ -24,22 +23,24 @@ import com.product.print.config.CmnCode; import com.product.print.config.CmnConst; import com.product.print.service.ide.IPrintRealizeService; +import com.product.print.util.CustomPictureRenderPolicy; import com.product.print.util.DynamicTableRenderPolicy; import com.product.print.util.FlowOpinionRenderPolicy; import com.product.print.util.TableEmptyHandler; import com.product.tool.flow.service.FlowDetailService; import com.product.util.BaseUtil; - import com.product.util.SystemParamReplace; import org.apache.poi.xwpf.usermodel.XWPFTable; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletResponse; -import java.io.*; -import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; +import java.io.File; +import java.io.OutputStream; +import java.util.HashMap; +import java.util.Map; +import java.util.Optional; +import java.util.UUID; import java.util.stream.Collectors; @@ -224,6 +225,7 @@ Object tempKey = UUID.randomUUID(); // 鏇挎崲鍚庣殑word涓存椂璺緞 String localTempPathWord = Global.getSystemConfig("temp.dir", "") + File.separator + "temp_print_" + tempKey + ".docx"; + replaceWord(localTempPathWord, file.getPath(), fse); file.delete(); @@ -270,7 +272,7 @@ Map<String, Object> cloneValues = new HashMap(dataFse.getValues()); //鑾峰彇瀛愯〃鏁版嵁 Map<String, DataTableEntity> subDataMap = dataFse.getSubData(); - ConfigureBuilder config = Configure.createDefault().builder(); + ConfigureBuilder config = Configure.builder(); config.addPlugin('@', new FlowOpinionRenderPolicy(flowOpinion)); config.addPlugin('$', new com.deepoove.poi.policy.DynamicTableRenderPolicy() { @Override @@ -283,6 +285,8 @@ return; } }); + + config.addPlugin('&', new CustomPictureRenderPolicy()); config.buildGrammerRegex("(#)?([\\w\\u4e00-\\u9fa5]+)(\\.?[\\w\\u4e00-\\u9fa5\\|]*)*(#)?"); TableEmptyHandler tableEmptyHandler = new TableEmptyHandler(); if (!CollectionUtil.isEmpty(subDataMap)) { -- Gitblit v1.9.2