第六章图形与图像处理综述.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 图形与图像处理 结构导图 简单图片与逐帧动画 简单图片与逐帧动画 简单图片 简单图片 简单图片 简单图片 简单图片 逐帧动画 逐帧动画 简单图片与逐帧动画 简单图片与逐帧动画 Canvas和Paint Canvas和Paint Canvas和Paint Canvas和Paint Shader Shader Path和PathEffect Path和PathEffect 自定义绘图 * * 倚动软件工厂实验室 Android系统提供了强大的图像支持,包括静态图片和图形动画。 静态图片指显示过程中不发生改变的图片,动态图片指内容、大小、位置会随着时间发生变化的图片,一般采用帧的方式处理。 动画分为2D和3D两部分,2D动画处理类主要位于android. graphics、android.graphics.drawable和android.view.animation包中;3D图形处理使用OpenGL作为标准接口。 Android系统中,一般使用Bitmap和BitmapFactory方法来封装和管理位图,采用Animation和AnimationDrawable类来保存和控制逐帧动画,使用Canvas和Path来绘制各种图形,其中Canvas用来绘制规则图形,而Path用来绘制不规则及自定义图形。 Android中,一般采用ImageView等类显示静态图片,其可以显示的图片格式包括.png(首选)、.jpg、.gif(不建议使用)等格式的位图,也包括使用XML资源文件定义的各种Drawable对象。 逐帧动画的原理是利用人的视觉的滞后性,在时间轴的每帧上绘制不同的内容,在足够短的时间内进行播放,给人的感觉就如同连续播放的动画。 逐帧动画适合于表现动态行为。例如:人物走路、说话,动物的奔跑、跳跃以及精致的3D效果等等。 Android采用AnimationDrawable开发逐帧动画,还可以使用Animation对普通图片使用补间动画。 在Android中操作图片是通过Drawable类来完成的,Drawable类有很多子类,如BitmapDrawable类用于操作位图,ColorDrawable类用于操作颜色,ShapeDrawable类用于操作形状。 Android不允许资源的文件名中出现大写字母,且不能以数字开头。 在Android应用的drawable-h(l\m\xh)dipi任一文件夹中添加一个Drawable对象后,都会在R.java文件中自动创建索引项:R.drawable.XX。系统会根据运行程序的设备分辨率,自动选择和设备分辨率最为接近的图片。如果只在一个文件夹中包含图片文件,那么系统则只能使用该图片。 (1) Drawable对象 需要指出的是,R.drawable.XX只是一个int类型的常量,代表该Drawable对象的ID,如果在Java程序中需要获得实际的Drawable对象,则可以调用Activity从android.content.ContextWrapper继承的getResources () 方法再调用Resources的getDrawable(int ID)方法来获取。 Android应用程序中,采用如下语法格式来访问该对象:[package.]R.drawable.filename 在Android的XML文件中,对象的访问格式如下: @[package.]R.drawable.filename (1) Drawable对象 (2)Bitmap和BitmapFactory Bitmap用于表示一张位图,BitmapDrawable用于封装一个Bitmap对象。 如果想将Bitmap对象包装成BitmapDrawable对象,可以调用BitmapDrawable的构造方法。 Bitmap bitmap = BitmapFactory.decodeFile (“draw1.jpg”) ; BitmapDrawable bd=new BitmapDrawable (bitmap) ; 如果需要获取BitmapDrawable包装的Bitmap对象,可以调用BitmapDrawable的getBitmap ( ) 方法。 Bitmap bitmap=bd.getBitmap ( ) ; Bitmap bitmap=(BitmapDrawable) getResources().getDrawable(R.drawable.XX).getBitmap(); Bitmap bitmap=BitmapFactory.decodeResource(getResources(),R.drawable.XX);

文档评论(0)

ss55863378 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档