笔记14 | 图片倒影+渐变效果
来源:互联网 发布:mac预览怎么编辑pdf 编辑:程序博客网 时间:2024/05/17 01:36
前言
长假归来第一发,来学习个简单的图片倒影渐变效果
地址
http://blog.csdn.net/xiangyong_1521/article/details/78195950
目录
需要实现的效果
主要代码
链接
一. 需要实现的效果
二. 主要代码
public class MainActivity extends Activity {
private ImageView mRevertImageView;
private Bitmap mSourceBitmap; //原图
private Bitmap mRevertBitmap; //倒立图
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mRevertImageView = (ImageView)findViewById(R.id.im_revert);
mSourceBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.source);
mRevertImageView.setBackground(new BitmapDrawable(getResources(), revertBitmap(mSourceBitmap)));
}
private Bitmap revertBitmap(Bitmap originalImage) {
final int reflectionGap = 4;
int width = originalImage.getWidth();
int height = originalImage.getHeight();
Matrix matrix = new Matrix();
matrix.preScale(1, -1); //实现图片的反转
Bitmap reflectionImage = Bitmap.createBitmap(originalImage, 0, height / 2, width, height / 2, matrix, false); //创建反转后的图片Bitmap对象,图片高是原图的一半。
Bitmap bitmapWithReflection = Bitmap.createBitmap(width,
(height + height / 2), Config.ARGB_8888); //创建标准的Bitmap对象,宽和原图一致,高是原图的1.5倍。
Canvas canvas = new Canvas(bitmapWithReflection);
canvas.drawBitmap(originalImage, 0, 0, null); //创建画布对象,将原图画于画布,起点是原点位置。
Paint defaultPaint = new Paint();
canvas.drawRect(0, height, width, height + reflectionGap, defaultPaint);
canvas.drawBitmap(reflectionImage, 0, height + reflectionGap, null);//将反转后的图片画到画布中。
Paint paint = new Paint();
LinearGradient shader = new LinearGradient(0,
originalImage.getHeight(), 0, bitmapWithReflection.getHeight()
+ reflectionGap, 0×70ffffff, 0×00ffffff,
TileMode.MIRROR); //创建线性渐变LinearGradient 对象。
paint.setShader(shader);
paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN));
canvas.drawRect(0, height, width, bitmapWithReflection.getHeight()
+ reflectionGap, paint); //画布画出反转图片大小区域,然后把渐变效果加到其中,就出现了图片的倒影效果。
return bitmapWithReflection;
}
}
三. 链接
>笔记13 | 练习Volley(二)加载网络图片的三种方法
>笔记12 | 复习Volley(一)基本概念和用法
>笔记11 | 动态设置TextView的字体大小
>笔记10 | 学习整理静态static 和 终态final
>[Android笔记9]使用wifi连接adb打印数据
- 笔记14 | 图片倒影+渐变效果
- 图片渐变以及倒影效果学习总结
- 倒影图片的遮罩效果即颜色渐变效果
- JS图片倒影效果
- 实现图片倒影效果
- 图片倒影效果
- 图片倒影效果
- Android 图片倒影效果
- CSS3----图片倒影效果
- CSS3图片倒影效果
- android 图片倒影效果
- Android 图片倒影效果
- Android Gallary图片游览效果--透明的倒影,层叠的图片,渐变的颜色透明度
- Android Gallary图片游览效果--透明的倒影,层叠的图片,渐变的颜色透明度
- QML做图片倒影效果(控件倒影)
- 生成带有透明渐变倒影的图片
- Net生成图片倒影效果
- Android实现图片倒影效果
- 请不要庆幸面试的简单
- Android 开发 对话框Dialog dismiss和hide方法的区别
- OPENGL学习笔记之五
- excel数据导入ssm
- codeforces567C. Geometric Progresmit(DP)
- 笔记14 | 图片倒影+渐变效果
- linux基础命令(三)man,find,grep
- Data Science完整学习路径Python版
- Comparison Between Cisco Nexus 7000 Series & Cisco Nexus 9500 Series Switches
- 关于DNF的多媒体包NPK文件的那些事儿(7)
- 面试题-海量数据处理问题
- Codeforces-191A-Dynasty Puzzles(简单dp)
- phpexcel导出
- jQuery过滤选择器的使用