您的位置:首页 > 移动开发 > Android开发

Android中的图像处理

2016-02-16 14:42 513 查看
1. 理解

手机上显示的任何界面, 无论是文字,按钮或图片, 都是系统内置的一些API绘制的Graphics(图形,图像) drawable

2. 相关API

Bitmap: 位图,图片在内存中数据对象 .bmp .jpg .png

compress(Format format, int quality, OutputStream os )
Drawable:
就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable)我们根据画图的需求,创建相应的可画对象
ShapeDrawable
BitmapDrawable
ColorDrawable
Canvas: 画布,绘图的目标区域,用于绘图
drawColor(Color color)
drawText(String text, float x, float Y, paint)
shapeDrawable.draw(canvas)

在onDraw(Canvas canvas)中绘制图形

Paint:
我们可以把它看做一个画图工具,比如画笔、画刷。他管理了每个画图工具的字体、颜色、样式。
Paint p = new Paint();
p.setColor(color);
p.setTextSize(size);
p.setScaleType(); //设置字体
p.setAntialians(true)//平滑效果
Matrix:
矩阵,高等数学里有介绍,在图像处理方面,主要是用于平面的缩放、平移、旋转等操作(针对图片本身, 而不是view)

Matrix m = new Matrix()
m.postScale(x, y)
m.postTranslate(10, 10)
m.postRotate(angle)

PopupWindow
PopupWindow(View contentView, int width, int height)

构造方法, 指定包含的视图,宽度和高度

showAsDropDown(View anchor, int xoff, int yoff)

显示在指定视图的下面,指定视图,x轴和y轴上的偏移值

setBackgroundDrawable(Drawable background)

设置背景图片, 必须设置,不然动画没作用

boolean isShowing()

判断是否正在显示

show()

显示

dismiss()

移除

3. 使用

1). <shape>的使用: 定义图形图片



2). <selector>, 定义多状态图片
1. 定义文件:
<selector xmlns:android="http://schemas.android.com/apk/res/android" >

<!--
按下时显示图片 先写-->

<item android:drawable="@drawable/main_index_search_pressed" android:state_pressed="true"></item>

<!--
正常情况下显示的图片 -->

<item android:drawable="@drawable/main_index_search_normal"></item>

</selector>
2. 引入
backgroud="@drawable/xxx_selector"

一般<selector>与<shape>综合使用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: