From 9843a613b41db35b05e048d3eacaf99253b57ce6 Mon Sep 17 00:00:00 2001 From: linzhijie <19970921lzj> Date: 星期一, 26 四月 2021 14:55:47 +0800 Subject: [PATCH] MAQV2 --- src/main/java/com/ots/project/tool/exam/ImageUtil.java | 38 ++++++++++++++++++++++++++++++++++++-- 1 files changed, 36 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ots/project/tool/exam/ImageUtil.java b/src/main/java/com/ots/project/tool/exam/ImageUtil.java index ff2b699..b0c1724 100644 --- a/src/main/java/com/ots/project/tool/exam/ImageUtil.java +++ b/src/main/java/com/ots/project/tool/exam/ImageUtil.java @@ -95,10 +95,17 @@ int barImageY = 30; float scorce = scorceF / 100; if (key.indexOf("ResponseFidelityDiagnosis") != -1) { - CANVAS_H = 105; + CANVAS_H = 105; waterDropImageX = 2; scorce100 = 812; barImageY = 5; + } + if (key.indexOf("ResponseFidelityDiagnosis_V2") != -1) { + CANVAS_H = 400; + waterDropImageX = -30; + scorce100 = 800; + barImageY = 5; + waterDropImageY = 0; } if (key.indexOf("RuilinTestResultValidityDiagnosisContext") != -1) { CANVAS_H = 105; @@ -130,6 +137,9 @@ } else { barName = ""; } + if(StringUtils.isBlank(barName)){ + return; + } BufferedImage barImage = getImage(reportTemplates + barName); BufferedImage waterDropImage = getImage(reportTemplates + waterDrop); @@ -153,7 +163,11 @@ int waterDropOffsetX = setWaterDrop(waterDrop, waterDropImageX, waterDropImageY, scorce100, scorce, g2d, waterDropImage); - setText(String.valueOf(Math.round(scorceF)), g2d, waterDropOffsetX); + if (key.indexOf("ResponseFidelityDiagnosis_V2") != -1) { + setTextV2(String.valueOf(Math.round(scorceF)), g2d, waterDropOffsetX); + }else{ + setText(String.valueOf(Math.round(scorceF)), g2d, waterDropOffsetX); + } g2d.dispose(); outputBarWaterImage(key + "_" + member_id + "_" + String.valueOf(scorceF)+"_" + suffixDate, image); @@ -165,6 +179,25 @@ } catch (IOException e) { e.printStackTrace(); } + } + private static void setTextV2(String value, Graphics2D g2d, int waterDropOffsetX) { + g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON); + + g2d.setColor(Color.BLACK); + Font font = new Font("", Font.BOLD, 16); + g2d.setFont(font); + + int numX = 0; + int numY = 17; + if (value.length() == 2) { + numX = 36; + } else if (value.length() == 3) { + numX = 32; + } else if (value.length() == 1) { + numX = 42; + } + + g2d.drawString(value, numX + waterDropOffsetX, numY); } private static void setText(String value, Graphics2D g2d, int waterDropOffsetX) { g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON); @@ -207,6 +240,7 @@ return image; } catch (IOException e) { log.info("寮傚父鍥剧墖锛�" + path); + log.error("{}鍙戠敓寮傚父:{}",path, e); throw new RuntimeException("鑾峰彇鍥剧墖璧勬簮寮傚父", e); } } -- Gitblit v1.9.1