昆明网站建设培训班,页面设计介绍,大丰网站开发,flash企业网站第一次做小程序海报分享#xff0c;感觉canvas还是有点难度的。
所以用了JAVA后端生成#xff0c;JAVA用了 ImageCombiner 组件去开发#xff0c;整体来说感觉还是便捷很多的。
dependencygroupIdcom.freewayso/groupIdartifactIdimage-c…第一次做小程序海报分享感觉canvas还是有点难度的。
所以用了JAVA后端生成JAVA用了 ImageCombiner 组件去开发整体来说感觉还是便捷很多的。
dependencygroupIdcom.freewayso/groupIdartifactIdimage-combiner/artifactIdversion2.6.5/version
/dependency
具体使用的话看连接https://gitee.com/dromara/image-combiner/#12-imagecombiner%E8%83%BD%E5%A4%9F%E5%81%9A%E4%BB%80%E4%B9%88 下面我把关键代码加一下
//文件的话放在static静态目录即可。
BufferedImage bf ImageIO.read(ImageUtil.class.getResource(/static/share.jpg));
//linux环境的话是没有中文字体的需要将字体也一起打包进入jar包里面String path/Alibaba-PuHuiTi-Regular.ttf;ImageCombiner combiner new ImageCombiner(bf, OutputFormat.JPG);combiner.addTextElement(xxxxx,path, 60, 180, 100);//组合图片combiner.combine();//生成bufferImage返回BufferedImage combinedImage combiner.getCombinedImage();return combinedImage;
在controller端的话 GetMapping(/getOrderShareImg)public void loadShare(Long id, HttpServletResponse response) throws Exception {//业务查询逻辑OrderVo ncOrderVo orderService.queryById(id);//拿到outputStreamServletOutputStream os response.getOutputStream();BufferedImage bufferedImage ImageUtil.genImage(ncOrderVo);//write即可ImageIO.write(bufferedImage,jpg,os);os.close();} 小程序端的话
wx.downloadFile({url: request.BASE_URLapi/wxapp/getOrderShareImg?idthis.data.order.id, // 下载urlsuccess (res) {// 下载完成后转发wx.showShareImageMenu({path: res.tempFilePath,success() {},fail: console.error,})},fail: console.error,})