纯Java实现微信朋友圈分享图

纯Java实现微信朋友圈分享图

1.实现分享图的效果

2.开发环境

2.1 JDK

* oracle‘s jdk 1.8以上

2.2 字体

* 若选择了微软雅黑字体又是代码部署到Linux,则需要安装微软雅黑字体,字体安装方式自行google

3. 加载背景

3.1 加载背景图

这是使用白色框底来作背景图1.

java code //这里从项目resources加载背景图,读文件到输入流,代码作了简列 InputStream background = null BufferedImage zoomPicture = ImageIO.read(background);

4. 圆头像的实现

4.1 头像裁剪

头像裁剪成半径

//头像半径
public static final int PROFILE_RADIUS = 80;
// 2. 头像裁剪成圆形
BufferedImage roundedImage = SharedImageUtils.createRoundedImage(new URL(userProfileUrl).openStream(),
                             SharedImageUtils.PROFILE_RADIUS);

4.2 背景图上绘画头像

绘画位置

/* 要放置的头像y坐标 */
 public static final int PROFILE_Y = 1056;
/* 要放置的头像X坐标 */
 public static final int PROFILE_X = 90; 
//頭像旁邊附帶文字(ps:字体是微软雅黑,linux不具备有,需要安装,)
BufferedImage profileImage = SharedImageUtils.mergePicture(zoomPicture,
  roundedImage,
  nickName + " 为你推荐网批货源",
  SharedImageUtils.PROFILE_X,
  SharedImageUtils.PROFILE_Y,
  SharedImageUtils.PROFILE_RADIUS,
  SharedImageUtils.PROFILE_RADIUS); 

5. 商品图案的显示

5.1 绘画的位置和长宽

public static final int COPYWRITER_X = 150;
/* 商店图案Y位置 */
public static final int SHOP_PIC_Y = 70;
/*商店图案位置*/
public static final int SHOP_PIC_X = 93;
/* 商店图案寬度 */
public static final int SHOP_PIC_WIDTH = 900;
/* 商店图案長度 */
public static final int SHOP_PIC_LENGTH = 950;

5.2 绘画图案

shopImage = SharedImageUtils.mergePicture(profileImage, shopImage, null,
  SharedImageUtils.SHOP_PIC_X,
  SharedImageUtils.SHOP_PIC_Y,
  SharedImageUtils.SHOP_PIC_WIDTH, SharedImageUtils.SHOP_PIC_LENGTH);

6. 文案的显示

6.1 文案绘画的位置与字体大小

BufferedImage textImage = SharedImageUtils.drawTextInImage(shopImage, "档口: " + shopName, 150, 1200);
//添加文案
BufferedImage mergeImage = SharedImageUtils.drawTextInImage(textImage, "地址: " + shopAddr, 150, 1280);  

7. 二维码的显示

7.1 二维码的大小与位置

/* 要放置的二维码寬度 */
public static final int QRCODE_WIDTH = 230;
/* 要放置的二维码長度 */
public static final int QRCODE_LENGTH = 230;
/* 要放置的二维码Y位置 往下为大值,往上为小值 */
public static final int QRCODE_Y = 1070;
/*要放置的二维码X位置 往下为大值,往上为小值 */
public static final int QRCODE_X = 740;

7.2 二维码的绘画

BufferedImage shopQrBuffer = ImageIO.read(new URL(shopQrUrl));
mergeImage = SharedImageUtils.mergeQrcode(mergeImage,
  shopQrBuffer,
  "扫描或长按小程序码",
  SharedImageUtils.QRCODE_X,
  SharedImageUtils.QRCODE_Y,
  SharedImageUtils.QRCODE_WIDTH,
  SharedImageUtils.QRCODE_LENGTH);

8. 最终的分享图

// 5. 生成分享图
ImageIO.write(mergeImage, "jpg", response.getOutputStream());

9. 源码


  1. [link](https://picasaweb.google.com/106437634114917759264/6630213808569212145#6630213806186676098 "background.jpg)

    这是使用的背景图是白色框底?

原文地址:https://www.cnblogs.com/vincentl/p/10216081.html

时间: 2024-10-01 19:17:20

纯Java实现微信朋友圈分享图的相关文章

ionic 实现微信朋友圈分享的完整开发流程

最近开始要着手负责开发ionic的项目了,一直很好奇想实现一个微信朋友圈分享的功能,所以我就网上找了找文章来练手实现,果不其然,找到了几篇,但是发现它们的流程都不太详细,清楚,直接,还有不少坑. 今天我自己就来梳理一下整个流程,笔者认为大家都是有ionic基础的: 首页,你得准备这些:    1: 一个android apk包    2: 应用签名(需要android apk包名来生成签名)    3: 通过微信开发平台,填写应用信息,申请一个微信 appid     4: 使用 cordova

微信朋友圈分享链接的【图片】设置

我们在制作好一些网页以后,希望通过微信朋友圈分享给大家.但是发现这样分享到微信朋友圈是没有小图标的.如何在链接前增加吸引人的图片呢?请看下面的制作方法. 在网页的头部加上以下代码,图片路径自行修改. <head> <div id='wx_pic' style='margin:0 auto;display:none;'> <img src='/image/data/pic300.jpg' /> </div> </head> 制作像素是 300*30

apiCloud 三方分享,微信好友分享,微信朋友圈分享,QQ分享,微博分享

首先查看我的这篇有关三方登录的博客,地址是http://www.cnblogs.com/gqx-html/p/8303567.html,配置完三方数据后可以从上一篇文章中的链接跳转到各个登录查看api,也可以看下面 微信好友分享:https://docs.apicloud.com/Client-API/Open-SDK/wx 微信朋友圈分享:https://docs.apicloud.com/Client-API/Open-SDK/wx QQ分享:https://docs.apicloud.co

params is error 微信朋友圈分享网页内的外链打不开

在微信平台下开发了一个网页应用,绑定了微信公众平台.但是网页内部有一个外链(这个外链的域名没有备案). 出现以下情况: 这个网页应用通过 "发送给朋友(Send to Chat)"的方式,对方收到以后可以打开外链. 这个网页应用通过 "分享到朋友圈(Share on moments)"的方式,其他人打开以后无法打开外链. 错误描述: 当点击这个链接到看到 "param is error"的URL为: http://qbview.url.cn/ge

实现手机网页调起原生微信朋友圈分享的工具nativeShare.js

http://www.liaoxiansheng.cn/?p=294 我们知道现在我们无法直接通过js直接跳转到微信和QQ等软件进行分享,但是现在像UC浏览器和QQ浏览器这样的主流浏览器自带一个分享工具,而他们也有自己定义的js接口.我们通过调用浏览器的接口去调用浏览器的分享,从而实现原生分享功能.是不是很酷呢? 工具介绍: nativeShare是一个可以通过javascript直接调用原生分享的工具. 该工具具有以下特点: 支持原生微博.微信好友.微信朋友圈.QQ好友.QQ空间分享 支持调用

解决为什么微信朋友圈分享网页只有自己看得到,别人不到的问题

貌似这个问题其实和前端没太大的关系,但是居然是我的第一篇博文,我之所以要写这个是因为我公司的页面也遇到这个问题,可百度了半天,都没发现什么实质性的解决方案,后来靠猜的,才猜到到底是什么原因. 简单来说,之所以只有自己看得到别人不到是因为你的页面title里有敏感词,所以被微信屏蔽掉了,所以发到朋友圈人家才会看不到. 就说我公司的页面吧,title里有‘红包’这个词,后来把这个词删了,页面终于能正常分享到朋友圈了. 暂时我知道的title敏感词就是‘红包’,大家要是发现了别的欢迎补充. 如果做前端

Unity3d sharesdk微信朋友圈分享

最近在安卓上做Unity3d开发,尝试使用sharesdk来开发社交分享功能,查看了官方案例和别人的例子之后,在自己的应用上链接死活分享不上去,百度了半天也没有找到解决方案.最后google到了答案,原来是在Assets/Plugins/Android/asset目录下的ShareSDK.xml这个文件中,我使用的拷贝下来的例子里面,BypassApproval设置成了true,也就是声明绕过微信验证,导致只能分享图片和文字,将BypassApproval改成false以后就可以了. 最后附上g

微信朋友圈分享js代码最新2015年无错版

最近微信对分享做了进一步规范,导致很多分享都不起作用了,今天跟大家分享,2015年最新修无错的! 以下是主要微信分享页面代码:(其中红色部分主要懒友自己填写自己哈.) <?php require_once "jssdk.php"; $jssdk = new JSSDK("yourAppID", "yourAppSecret"); $signPackage = $jssdk->GetSignPackage(); ?> <!D

微信朋友圈分享--代码分享

1.首先,html页面要链接 <script src="https://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> 2.判断是否为微信里浏览器打开? //使用用微信打开var checkPlat = { isAndroid: function (ua) { ua = ua || navigator.userAgent; return ua.toLowerCase().indexOf('android') &