bitmapshader 实现图片的放大镜效果
来源:互联网 发布:mac 命令行 u盘路径 编辑:程序博客网 时间:2024/05/22 01:41
/** * Created by qianxin on 16/11/25. */public class ZoomImageView extends View { private Bitmap bitmap; private Paint paint; //放大倍数 private static final int FACTOR = 3; //放大镜的半径 private static final int RADIUS = 100; private int centerX ,centerY; public ZoomImageView(Context context) { super(context); bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.zsh); Bitmap bmp = Bitmap.createScaledBitmap(bitmap, bitmap.getWidth() * FACTOR, bitmap.getHeight() * FACTOR, true); //制作一个圆形的图片(放大的局部),盖在canvas上面 BitmapShader shader = new BitmapShader(bmp, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); paint = new Paint(Paint.ANTI_ALIAS_FLAG); paint.setShader(shader); centerX = centerY = RADIUS; } @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub super.onDraw(canvas); canvas.drawBitmap(bitmap, 0, 0, paint ); //画制作好的圆形图片 canvas.drawCircle(centerX, centerY, RADIUS, paint); } @Override public boolean onTouchEvent(MotionEvent event) { int x = (int) event.getX(); int y = (int) event.getY(); Matrix matrix = new Matrix(); matrix.setTranslate( -x * (FACTOR-1), -y * (FACTOR-1)); paint.getShader().setLocalMatrix(matrix); centerX = x; centerY = y; invalidate(); return true; }}
0 0
- bitmapshader 实现图片的放大镜效果
- 图片实现放大镜效果
- android 使用BitmapShader实现圆形以及放大镜效果
- JavaScript实现的放大镜放大图片效果
- Javascript实现图片的放大镜功能效果
- 原生JS实现图片的放大镜效果
- JQzoom实现图片放大镜效果
- 图片放大镜效果-- jquery实现
- js实现图片放大镜效果
- javascript实现图片放大镜效果
- 实现放大镜的效果
- 在MFC中用GDI+实现图片浏览的放大镜效果
- 使用jqzoom来实现图片放大镜的效果
- jquery连接数据库实现图片的放大镜效果
- Jquery实现图片放大镜效果的思路及代码
- 分别用javascript,jquery实现 对图片的放大镜效果
- 使用BitmapShader实现图片的圆形、圆角
- JS(jquery)实现图片放大镜效果
- SQLite加密
- Fortran指针初探
- 线程池的使用
- 单片机资源:时间和空间的思考
- 几种常见加密算法解析及使用
- bitmapshader 实现图片的放大镜效果
- PHP+mysql+ajax轻量级聊天室
- jsonobject的element和accumulate
- 【NOIP2016提高组复赛】换教室
- mysql 时间函数和事件
- 人工智能、机器学习、统计学和数据挖掘之间有什么区别?
- rocketMQ集群部署
- 如何用EM设置文本尺寸
- Android应对进程被杀死--Service(四) 通过JNI实现守护进程,使Service服务不被杀死