android 照片拼接长图_android多图拼接长图并合理显示-Go语言中文社区

本文介绍如何在Android中使用canvas.drawBitmap方法拼接长图,以屏幕宽度为基准,保持图片比例,通过压缩图片防止内存溢出。详细讲解了图片压缩和长图拼接的核心代码,并提供了XML显示长图的示例。
摘要由CSDN通过智能技术生成

以前说过了 重叠部分图片合成,今天说一下canvas.drawBitmap拼接长图

先上效果gif

需求:多图拼接长图,长图大小 宽度为屏幕,高度自己不变形成比例

核心源码1.:final int mScreenWidth = getResources().getDisplayMetrics().widthPixels;

LogUtil.log("mScreenWidth---" + mScreenWidth);

new AsyncTask, Void, Bitmap>() {

@Override

protected void onPreExecute() {

super.onPreExecute();

showMyDialog();

}

@Override

protected Bitmap doInBackground(List... lists) {

List list = lists[0];

Bitmap last = null;

for (int i = 0; i < list.size(); i++) {

if (last == null) {

last = PhotoUtils.comp(BitmapFactory.decodeFile(list.get(0)));

} else {

last = PhotoUtils.newBitmap(mScreenWidth, last, PhotoUtils.comp(BitmapFactory.decodeFile(list.get(i))));

}

}

return last;

}

@Override

protected void onPostExecute(Bitmap bitmap) {

dismissMyDialog();

ivLong.setImageBitmap(bitmap);

}

}.execute(pathList);

1.压缩到不崩溃的加载质量//图片按比例大小压缩方法(根据Bitmap图片压缩)

public static Bitmap comp(Bitmap image) {

ByteArrayOutputStream

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值