**ANDROID**# 第七章图形与图像处理(静态处理) > Bitmap是有像素点构成的点阵图。 ------ ## 使用简单的图片 ---- * 通过Drawable对象进行访问。
2017-06-10 11:06
1066 查看
使用简单的图片
通过Drawable对象进行访问。R.drawable.file_name
@drawable/file_name
通过BitmapDrawable对Bitmap对象进行封装,以下皆为静态方法,来自BitmapFactory。
BitmapDrawagle drawable - new BitmapDrawable(bitmap);通过Bitmap对象的到另外的图像
createBitmap(Bitmap source,int x,int y,int width, int height):从源位图source的制定位置开始截取一个图像。
createScaledBitmap(Bitmap src,int dstWidth,int dstHeight,boolean filter):对原来的位图进行缩放
createBitmap(int width,int height,Bitmap.Config config):创建一个宽width、height的新位图
createBitmap(Bitmap source,int x,int y,int width,int height,Matris m,boolean filter);截取一段图像
decodeByteArray(byte[],int offset, int length);从指定字节数组的offset位置开始,将长度length的字节解析成Bitmap对象。
decodeFile(String pathName):从pathName指定文件中解析、创建Bitmap对象
用来判断是否被回收: isRecycled()
用来强制回收:recycle()
使用静态方法导入一张图片:
AssetManager assets=getAssets();
InputStream assetsFile = assets.open(images[currentImg++]);
BitmapDrawable bitmapDrawable=(BitmapDrawable) image.getDrawable();
image.setImageBitmap(BitmapFactory.decodeStream(assetFile));
>绘图
绘图基础集成View组件,重写onDraw()回调方法。
*使用Canvas画布进行画图
drawArc()
drawBitmap()
drawCircle()
drawLine()
drawLines(),drawOvl()
drawPath(),drawPoint()
drawPoints(),drawRect()
drawRoundRect()
drawText()
drawTextOnPath()
clipRect()
clipRegion();
* Canvas坐标变换rotate()旋转,scale()缩放,skew()倾斜,translate()移动;
使用Paint进行绘图
setARGB()设置颜色。
setAlpha()设置透明度
setColor()设置颜色
setPathEffect()设置路径
setShader()设置画笔的填充效果
setShadowLayer()设置阴影
setStrokeWidth()设置笔触宽度
setStrokeJoin()设置笔转风格
setStyle()设置paint的填充风格
setTextAlign()设置文字对齐方式
setTextSize()设置文本的文字大小。
使用Path类
预先将N个点连成一条路径,然后在路径上绘制
子类ComposePathEffect/CornerPathEffect/DashPathEffect/DiscretePathEffect/SumPathEffect
绘图应用-绘制有用游戏
重复调用onDraw()方法,每次在View组件上绘制不同的东西,形成逐帧动画。
双缓冲画图板
弹球游戏
>图形特效处理
使用Matrix控制变换步骤获取Matrix对象
调用Matrix的方法进行变换(矩阵方法)
将程序Matrix所做的变换应用到指定图形或组件。
Matrix提供的方法
setTranslage
setSkew()
setTotate()
setScale()
Matrix 应用举例
键盘操作图片移动
移动游戏背景
使用drawBitmapMesh扭曲图像
bitmap:扭曲的源位图
meshWidth/meshHeight划分格子数
verts扭曲后个顶点的位置
vertOffset:控制verts数组中扭曲的开始。
通过drawBitmapMesh()方法对源位图扭曲绘制。
drawBitmapMesh 应用举例
可揉的图片
>使用Shader填充图形
使用Shader对象指定渲染效果来填充图像。子类:BitmapShader位图平铺
LinerGradient线性渐变
RadialGradient圆形渐变
SweepGradient角度渐变
ComposeShader组合渲染效果
相关文章推荐
- Android L(5.0)源码之图形与图像处理之简单图片——Bitmap
- <转>android中的图形图像-访问图片drawable
- android中的图形图像处理-如访问图片drawable
- android中的图形图像-访问图片drawable
- Android中使用Bitmap对图片进行特效处理
- 【Android】图形图像处理之”简单图片“
- android中的图形图像-访问图片drawable
- android中的图形图像-访问图片drawable
- 用python简单处理图片(4):图像中的像素访问
- 分享的是Android图像特效处理的小技巧,比如圆角、倒影、还有就是图片缩放、Drawable转化为Bitmap、Bitmap转化为Drawable等等
- android中的图形图像-访问图片drawable
- Android中几种图像特效处理的小技巧,比如圆角,倒影,还有就是图片缩放,Drawable转化为Bitmap,Bitmap转化为Drawable等等
- 用python简单处理图片(4):图像中的像素访问
- android中的图形图像-访问图片drawable
- android 根据图片url获取bitmap或者drawable,然后再进行压缩处理
- Android中的Bitmap、Drawable、Byte[]、String、之间的转换及图像简单处理
- 用python简单处理图片(4):图像中的像素访问
- 【Android】Glide 实现图片再处理(比如在右下角添加 GIF 标识、圆角处理、添加水印等,通过在原 bitmap 的基础上进行再处理)
- 用python简单处理图片(4):图像中的像素访问
- 图形图像处理demo----drawable,bitmap,bitfactory的使用