Android Shader渲染器:BitmapShader图片渲染
来源:互联网 发布:html css js 教程视频 编辑:程序博客网 时间:2024/04/30 13:07
public class BitmapShader extends Shader
BitmapShader, Shader家族的 专门处理图片渲染的
构造方法:
public BitmapShader(Bitmap bitmap, TileMode tileX, TileMode tileY)
bitmap:原图
tile直译为 瓷砖,瓦片。这里的TileMode 可看成是 铺图的模式。
tileX, tileY:x/y 方向铺图的模式
public enum TileMode { CLAMP (0), REPEAT (1), MIRROR (2); TileMode(int nativeInt) { this.nativeInt = nativeInt; } final int nativeInt;}CLAMP:如果超出原始bounds(即原图的边界),则重复边缘上的color
REPEAT:重复bitmap
MIRROR:重复bitmap,与REPEAT不同的时,它是镜像重复,即:反向重复
例:
public class BitmapShaderView extends View { private BitmapShader mBitmapShader; private ShapeDrawable mShapeDrawable; public BitmapShaderView(Context context, Bitmap bitmap) { super(context); mBitmapShader = new BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); mShapeDrawable = new ShapeDrawable(new OvalShape()); mShapeDrawable.getPaint().setShader(mBitmapShader);// mShapeDrawable.setBounds(0, 0, bitmap.getWidth(), bitmap.getHeight()); //原图大小 mShapeDrawable.setBounds(0, 0, bitmap.getWidth() * 2, bitmap.getHeight() * 2); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); canvas.drawColor(Color.CYAN); mShapeDrawable.draw(canvas); }}在Activity中,setContentView(new BitmapShaderView(context, bitmap));
原图 效果图
x和y 边缘重复
改:mBitmapShader = new BitmapShader(bitmap, Shader.TileMode.MIRROR, Shader.TileMode.REPEAT);
效果
x方向镜像重复;y方向重复
改:mBitmapShader = new BitmapShader(bitmap, Shader.TileMode.REPEAT, Shader.TileMode.MIRROR);
效果:
x方向重复;y方向镜像重复
0 0
- Android Shader渲染器:BitmapShader图片渲染
- Android 图片渲染之Shader渲染器
- BitmapShader图片渲染
- BitmapShader渲染器:实现圆形图片
- shader渲染器(BitmapShader 、LinearGradient 、RadialGradient )简单介绍
- Android 颜色渲染(四) BitmapShader位图渲染
- Android 颜色渲染(四) BitmapShader位图渲染
- android的shader渲染器
- Android中的自绘View的那些事儿(二)之 Shader渲染器和BitmapShader位图渲染器的简介
- Android 图片特效处理:Shader着色器、渲染
- Android Paint 之 BitmapShader位图的图像渲染器
- Android 颜色渲染Shader
- Android - Shader图像渲染
- 关于 android的 渲染器 Shader
- Android——Shader渲染器
- Android渲染器Shader:LinearGradient(一)
- Android 颜色渲染(三) Shader颜色渲染
- Android 颜色渲染(三) Shader颜色渲染
- H.264视频编码技术学习资源
- JSP上传视频后自动转成flv的核心JAVA方法
- 2012年5月SAT香港真题解析
- 用java程序调用ffmpeg执行视频文件格式转换flv
- 【微信分享】 微信分享集成 使用weixin js sdk 兼容 旧版本 2
- Android Shader渲染器:BitmapShader图片渲染
- ffmpeg.exe与mencoder.exe实例转换操作
- iOS 系统中,H.264 视频流可以硬件解码吗? 具体如何实现?
- 在Windows下安装与使用Android NDKr5
- Android模拟器使用SD卡
- FFmeg相关资料下载
- Android进程间通信(IPC)机制Binder简要介绍和学习计划
- FFmeg快速入门
- Android中LayoutInflater的使用,inflate