Android(安卓)图片处理之图片叠加--Bitmap
16lz
2021-01-26
今天要实现一个小功能,就是在一张图片上,套上一层半透明的图片或者颜色。例如下图:
方法其实很多,现在先实现一种方法,部分代码如下啊:
- ImageViewimage=(ImageView)findViewById(R.id.imageView1);
- //防止出现ImmutablebitmappassedtoCanvasconstructor错误
- Bitmapbitmap=BitmapFactory.decodeResource(getResources(),
- R.drawable.teaport_1).copy(Bitmap.Config.ARGB_8888,true);
- // 新的图片
- BitmapnewBitmap=null;
- newBitmap=Bitmap.createBitmap(bitmap);
- Canvascanvas=newCanvas(newBitmap);
- Paintpaint=newPaint();
- // 铺上一层半透明的绿色
- paint.setColor(Color.GREEN);
- paint.setAlpha(70);
- canvas.drawRect(0,0,bitmap.getWidth(),bitmap.getHeight(),paint);
- canvas.save(Canvas.ALL_SAVE_FLAG);
- //存储新合成的图片
- canvas.restore();
- // 搞定!
- image.setImageBitmap(newBitmap);
方法很简单。canvas.drawRect 换成drawBitmap就是叠加一张图片。 另外还有很多方法,例如LayerDrawable类 。以后碰到在继续整理。
更多相关文章
- android 中的Main调试方法
- 实现图片浏览,改变透明度的方法
- Android(安卓)给图标着色的方法
- Android(安卓)Ams浅析
- Android之开源框架NineOldAndroids动画库
- Custom View
- android6.0以后删除HttpClient的解决方法
- logcat使用方法
- Error generating final archive: Debug Certificate expired on