Java实现把三张图片合成一个图片

Java把三张图片合成一个

商城业务中的客户分享,以及分销需要给客户生成一个推广图片
在这里插入图片描述

代码:


public String getAngentImgUrl(Spread spread) {String fileName= UUID.randomUUID() +String.valueOf(spread.getAid());//图片名称Account account=accountMapper.getAccountByAid(spread.getAid());//拿到用户头像地址String headUrl=account.getHeadImg();//拿到用户推广的二维码地址String qCodeUrl=account.getAgentUrl();//背景地址String bgUrl=dictionaryMapper.getCodeValue("bgImage","angent");BufferedImage bufferedImageBg= ImageUtil.getBufferedImage(bgUrl);BufferedImage bufferedImageQCode=ImageUtil.getBufferedImage(qCodeUrl);BufferedImage bufferedImageHead=ImageUtil.getBufferedImage(headUrl);//设置宽高int width=598;int height=598;//画布BufferedImage page= new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);Graphics2D g=(Graphics2D)page.createGraphics();//背景g.drawImage(bufferedImageBg,0,0,width ,height ,null);//设置头像图片的位置g.drawImage(bufferedImageHead, 30,30, 100, 100, null);//设置文字样式g.setColor(Color.BLACK);Font font=new Font("楷体", Font.BOLD, 30);g.setFont(font);//设置文字 以及位置g.drawString("编号:******",150,90);g.drawString("姓名:*****",150,120);//设置二维码的位置g.drawImage(bufferedImageQCode, 400,400, 150, 150, null);//上传到七牛云return QianNiuUpload.uploadInputStream(ImageUtil.bufferedImageToInputStream(page),fileName);
}

根据流上传到七牛云

public static String uploadInputStream(InputStream inputStream,String fileName){//构造一个带指定 Region 对象的配置类Configuration cfg = new Configuration(Region.region0());//...其他参数参考类注释UploadManager uploadManager = new UploadManager(cfg);//...生成上传凭证,然后准备上传String accessKey = PictureUtile.accessKey;String secretKey =  PictureUtile.secretKey;String bucket = PictureUtile.bucketname;//默认不指定key的情况下,以文件内容的hash值作为文件名String key = fileName;try {Auth auth = Auth.create(accessKey, secretKey);String upToken = auth.uploadToken(bucket);Response response = uploadManager.put(inputStream, key, upToken,null,null);//解析上传成功的结果DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);return PictureUtile.url +putRet.key;} catch (Exception ex) {ex.printStackTrace();return null;}}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部