有时分享出去的图片如果过长,就会导致缩略图的正方形图片呈现的效果是被压缩的,一般才用居中裁剪的方式,将裁剪后的图作为缩略图即可
本文后面将举微信分享到朋友圈和好友到例子,在分享出去到图片中,若为长图,则截取中间部分作为缩略图标,先放实现的代码。例子作为代码的复习笔记使用
实现图片居中裁剪代码如下:
//其中bitmap为老的Bitmap对象,将会被裁剪
Bitmap withSizeBitmap = null;//该withSizeBitmap是取过长宽的
Bitmap thumbBmp = null;//将上面的withSizeBitmap再次压缩否分享出去
if (bitmap.getWidth() < bitmap.getHeight()) {//如果是竖长图或正方形
//居中裁剪创建一个带有宽高的bitmap
withSizeBitmap = Bitmap.createBitmap(bitmap, 0, ((bitmap.getHeight() - bitmap.getWidth()) / 2), bitmap.getWidth(), bitmap.getWidth());
//压缩
thumbBmp = Bitmap.createScaledBitmap(withSizeBitmap, WX_THUMB_SIZE, WX_THUMB_SIZE, true);
}else if (bitmap.getWidth() >= bitmap.getHeight()){//如果是横长图
withSizeBitmap = Bitmap.createBitmap(bitmap, ((bitmap.getWidth() - bitmap.getHeight()) / 2), 0, bitmap.getHeight(), bitmap.getHeight());
thumbBmp = Bitmap.createScaledBitmap(withSizeBitmap, WX_THUMB_SIZE, WX_THUMB_SIZE, true);
}
分享朋友圈的方法:
/**
* 分享朋友圈
* @param url 链接
* @param title 标题
* @param content 内容简介
* @param imgPath 缩略图图片地址(本地)
<