From 1faf3ab0ba6c17eee48e68e8d0077ea61f45d75d Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 12 五月 2020 20:19:36 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/util/ImageUtil.java | 84 ++++++++++++++++++++++------------------- 1 files changed, 45 insertions(+), 39 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/ImageUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/ImageUtil.java index 253044c..8f5f1b8 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/ImageUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/ImageUtil.java @@ -248,7 +248,8 @@ * @param goods * @return */ - public static InputStream drawGoodsPoster(InputStream qrcode, InputStream portraitStream, String inviteCode, GoodsDetailVO goods) { + public static InputStream drawGoodsPoster(InputStream qrcode, InputStream portraitStream, String inviteCode, + String mainPic, GoodsDetailVO goods) { try { String fontPath = "/usr/share/fonts/PingFang_Medium.ttf"; String os = System.getProperty("os.name"); @@ -265,7 +266,8 @@ Font boldFont36 = Font.createFont(Font.PLAIN, new File(fontBoldPath)).deriveFont(36.0f); int px = 640; // 鍥剧墖瀹藉害 - int py = 1154; // 鍥剧墖楂樺害 +// int py = 1154; // 鍥剧墖楂樺害 鏄剧ず閭�璇风爜 + int py = 1060; // 鍥剧墖楂樺害 final BufferedImage targetImg = new BufferedImage(px, py, BufferedImage.TYPE_INT_RGB); HashMap<Key, Object> mapH = new HashMap<Key, Object>(); mapH.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);// 鎶楅敮榻柯狅紙鎶楅敮榻挎�诲紑鍏筹級聽聽 @@ -281,7 +283,7 @@ int spacing = 20; // 鍙宠竟璺� // 1銆佺敾鍟嗗搧涓诲浘 - InputStream picStream = HttpUtil.getAsInputStream(goods.getPicUrl().replace("https://", "http://")); + InputStream picStream = HttpUtil.getAsInputStream(mainPic); // InputStream picStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/share/test_pic1.jpg"); g2d.drawImage(ImageIO.read(picStream), 0, 0, x, y, null); @@ -330,6 +332,8 @@ g2d.drawString(title.substring(0, length2), spacing, y + 45 + row * 36); } + + int baoYouLength = spacing; if (!goods.isHasCoupon()) { // 鏃犲埜 g2d.setColor(new Color(229, 0, 92)); @@ -368,16 +372,20 @@ g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2d.drawRoundRect(spacing + 42, y + 140, textLength + 20, 39, 10, 10); g2d.drawString(quanAmount, spacing + 55, y + 170); + + baoYouLength =spacing + 42 + textLength + 20 + 20; } // 鑷惀 銆佸寘閭� + InputStream ziying = null; if (goods.getShopType() == 21) { - InputStream ziying = ImageUtil.class.getClassLoader().getResourceAsStream("image/icon_ziying.png"); - g2d.drawImage(ImageIO.read(ziying), spacing + 180, y + 150, 60, 30, null); + ziying = ImageUtil.class.getClassLoader().getResourceAsStream("image/icon_ziying.png"); + g2d.drawImage(ImageIO.read(ziying), baoYouLength, y + 150, 60, 30, null); } else if (goods.isBaoyou()) { - InputStream ziying = ImageUtil.class.getClassLoader().getResourceAsStream("image/icon_baoyou.png"); - g2d.drawImage(ImageIO.read(ziying), spacing + 180, y + 150, 60, 30, null); + ziying = ImageUtil.class.getClassLoader().getResourceAsStream("image/icon_baoyou.png"); + g2d.drawImage(ImageIO.read(ziying), baoYouLength, y + 150, 60, 30, null); } + // 閿�閲� String sale = null; @@ -398,20 +406,18 @@ int textLength = fm.stringWidth(sale); g2d.setFont(font24); g2d.setColor(new Color(153, 153, 153)); - g2d.drawString(sale, spacing + 580 - textLength, y + 125); + g2d.drawString(sale, spacing + 605 - textLength, y + 125); - g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); - g2d.setColor(new Color(255,222, 235)); - g2d.fillRoundRect(spacing, y + 200, 385, 203, 10, 10); + // 涓嬪崟鎻愮ず + InputStream downTip = null; + if (goodsType == Constant.SOURCE_TYPE_TAOBAO) { + downTip = ImageUtil.class.getClassLoader().getResourceAsStream("image/share/down_tip_tb.png"); + } else { + downTip = ImageUtil.class.getClassLoader().getResourceAsStream("image/share/down_tip_jd_pdd.png"); + } + g2d.drawImage(ImageIO.read(downTip), spacing, y + 200, 382, 203, null); - Font font22 = Font.createFont(Font.PLAIN, new File(fontPath)).deriveFont(22.0f); - g2d.setFont(font22); - g2d.setColor(new Color(229,0, 92)); - g2d.drawString("濡備綍涓嬪崟锛�", spacing + 6, y + 245); - g2d.drawString("1.闀挎寜璇嗗埆鏈浘", spacing + 6, y + 290); - g2d.drawString("2.鐐瑰嚮椤甸潰鍙充笂瑙抂 ... ],閫夋嫨[澶嶅埗閾炬帴]", spacing + 6, y + 330); - g2d.drawString("3.鎵撳紑"+source+"App锛岄鍒镐笅鍗�", spacing + 6, y + 370); // 浜岀淮鐮佸浘妗� InputStream codeFrame = ImageUtil.class.getClassLoader().getResourceAsStream("image/share/qr_code_frame01.png"); @@ -419,8 +425,8 @@ // 鐢讳簩缁寸爜 int codeSize = 170; - int pX = spacing + 420; - int pY = y + 215; + int pX = spacing + 422; + int pY = y + 217; g2d.drawImage(ImageIO.read(qrcode), pX, pY, codeSize, codeSize, null); int portraitSize = 200 * 5 / 23; @@ -437,25 +443,25 @@ g2d.drawImage(portraitImg, pPX, pPY, portraitSize, portraitSize, null); - g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); - g2d.setColor(new Color(255,231, 224)); - g2d.fillRoundRect(spacing, y + 420, 607, 79, 10, 10); - - InputStream banliStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/banlikuaisheng.png"); - g2d.drawImage(ImageIO.read(banliStream), spacing + 20, y + 440, 170, 38, null); - - inviteCode = "閭�璇风爜:" + inviteCode; - Font font26d28 = Font.createFont(Font.PLAIN, new File(fontPath)).deriveFont(26.28f); - FontMetrics fmcode = g2d.getFontMetrics(font26d28); - int codeLength = fmcode.stringWidth(inviteCode); - // 閭�璇风爜鑳屾櫙 - g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); - g2d.setColor(new Color(229,71, 27)); - g2d.fillRoundRect(spacing + (600 - (int)(codeLength * 1.1)), y + 440, 10 + codeLength, 37, 10, 10); - // 閭�璇风爜鏂囧瓧 - g2d.setFont(font26d28); - g2d.setColor(new Color(255, 255, 255)); - g2d.drawString(inviteCode, spacing + (600 - (int)(codeLength * 1.1) + 5), y + 468); +// g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); +// g2d.setColor(new Color(255,231, 224)); +// g2d.fillRoundRect(spacing, y + 420, 607, 79, 10, 10); +// +// InputStream banliStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/banlikuaisheng.png"); +// g2d.drawImage(ImageIO.read(banliStream), spacing + 20, y + 440, 170, 38, null); +// +// inviteCode = "閭�璇风爜:" + inviteCode; +// Font font26d28 = Font.createFont(Font.PLAIN, new File(fontPath)).deriveFont(26.28f); +// FontMetrics fmcode = g2d.getFontMetrics(font26d28); +// int codeLength = fmcode.stringWidth(inviteCode); +// // 閭�璇风爜鑳屾櫙 +// g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); +// g2d.setColor(new Color(229,71, 27)); +// g2d.fillRoundRect(spacing + (600 - (int)(codeLength * 1.1)), y + 440, 10 + codeLength, 37, 10, 10); +// // 閭�璇风爜鏂囧瓧 +// g2d.setFont(font26d28); +// g2d.setColor(new Color(255, 255, 255)); +// g2d.drawString(inviteCode, spacing + (600 - (int)(codeLength * 1.1) + 5), y + 468); g2d.dispose(); -- Gitblit v1.8.0