JAVA生成微信小程序分享海报图片 您所在的位置:网站首页 微信小程序推广海报 JAVA生成微信小程序分享海报图片

JAVA生成微信小程序分享海报图片

2023-08-05 02:21| 来源: 网络整理| 查看: 265

由于小程序里面分享产品,不能直接到朋友圈,因此很多系统的做法是生成一张带有二维码,或者小程序码的海报图片。用户保存到本地,然后分享到朋友圈。

生成海报,有两种方式:

前端小程通过 canvs 绘图到模式进行合成 前端小程序请求到后台服务器进行合成

在本场 Chat 中,会讲到如下内容:

如何使用 Java 图片 JDK 进行图片操作 如何进行图片裁剪 如何进行图片缩放 如何进行图片合成

适合人群: 对 Java 图片合成有兴趣的技术人员

背景

由于小程序里面分享产品,不能直接到朋友圈,因此很多系统的做法是生成一张带有二维码,或者小程序码的海报图片。用户保存到本地,然后分享到朋友圈。生成海报,有两种方式

前端小程通过 canvs 绘图到模式进行合成 前端小程序请求到后台服务器进行合成

下面介绍第二种方式,后端服务器生成

效果图

在这里插入图片描述

代码 package com.jxyunge.utils;import org.junit.Test;import sun.font.FontDesignMetrics;import javax.imageio.ImageIO;import java.awt.*;import java.awt.geom.RoundRectangle2D;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import java.net.URL;/** * @ClassName : PosterImageTool * @Description : 海报生工具 * @Author : bianmaren * @Date: 2020-04-09 21:14 * @Bolg: http://www.bianmaren.com */public class PosterImageTool{ @Test public void generateSharePoster() throws Exception{ // 存储路径 String savePath = "/Users/dengwenbing/Downloads/testPosterImage.png"; // 背景图片,网络地址,也可以自己改成本地地址 String bgPath = "http://www.bianmaren.com/upload/image/20200409/1586438878193019624.png"; // 头像 String headImg = "http://www.bianmaren.com/upload/image/20200409/1586438971036060321.png"; // 产品图片 String productImg = "http://www.bianmaren.com//upload/image/20200409/1586439477682026373.png"; // 二维码 String qrcodeImg = "http://www.bianmaren.com/upload/image/20200409/1586439312240066963.png"; // 昵称 String nickName = "bianmaren"; // 门店名称 String storeName = "编码人"; // 提示语 String tips = "为您挑选了一个好物"; // 价格 String price = "88.00-199.00"; // 羊角符号 String pricePre = "¥"; // 背景图 BufferedImage bgBuffer = ImageIO.read(new URL(bgPath)); // 头像 BufferedImage avatarBuffer = ImageIO.read(new URL(headImg)); BufferedImage avatarMinRoundBuffer = WxImageTool.roundImage(WxImageTool.resizeByHeight(avatarBuffer, 100), 100, 100); // 头像合并 BufferedImage imgWithHeadImg = WxImageTool.synthesisPicAtXy(bgBuffer, avatarMinRoundBuffer, 35, 65); Color black = new Color(0, 0, 0); // 黑色 Color grey = new Color(155, 155, 155); // 灰色 Color red = new Color(255, 0, 0); // 红色 // 添加用户昵称 BufferedImage imgWithName = WxImageTool.addTxtAtXy(imgWithHeadImg, nickName, 160, 100, new Font("宋体", Font.PLAIN, 20), black); // 添加提示语 BufferedImage imgWithTips = WxImageTool.addTxtAtXy(imgWithName, tips, 160, 150, new


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有