前面一篇博文Android画图之Bitmap(一)
介绍了简单的把
Bitmap
画到屏幕上,以及缩放
Bitmap
以铺满屏幕。对
Bitmap
的操作还有很多。比如截取
Bitmap
的部分区域,可以使用
mBitmap = Bitmap.createBitmap(bmp, 100, 100, 120, 120);
这句代码从
bmp
的
(100,100)
处截取
120*120
像素区域放到新的
Bitmap
中。
缩放一个
Bitmap
,前面一篇已经涉及到了,可以用
Bitmap.createScaledBitmap()
方
法根据给定的
Bitmap
创建
一个新的,缩放后的
Bitmap
。
Bitmap mBitmap = Bitmap.createScaledBitmap(bmp, mScreenWidth, mScreenHeight, true);
其中
mScreenWidth
和
mScreenHeight
是屏幕的宽度和高度,这里就将
bmp
拉伸到整个屏幕。
每次
createBitmap
,都会分配新的内存,带来资源的
消耗,所以用
Bitmap
的
createBitmap
虽然简单方便,但是不是最优方
法。介绍一个比较好点的方法,不用创建新的
Bitmap
,用
Canvas
在画的时候直接缩放或者剪切。
canvas.drawBitmap(mBitmap, null, new Rect(0, 0, 200, 200), null);
这里的
Rect
对象表示一个矩形区域,从
(0,0)
到
(200,200)
之间的矩形区域。这段代码将把
mBitmap
缩放并绘制到屏幕上的
(0,0)
到
(200,200)
之间的区域。
这个方法还有第二个参数我给的是
null
,其实这个参数也是个
Rect
对象,表示源
Rect
。把图片的某个区域拿出来画到屏幕的指定区域。
canvas.drawBitmap(mBitmap, new Rect(100, 100, 300, 300), new Rect(100, 100, 200, 200), null);
这里将
mBitmap
的
(100,100)
到
(300,300)
区域拿出来,自动缩放并画到屏幕的
(100,100)
到
(200,200)
区域。
对于
Bitmap
的处理,上面介绍的
是最简单的两种,平移和缩放。而要是需要更复杂的处理,比如旋转和倾斜,就得使用
Matrix
了。下面几篇将介绍
Matrix
在画图中的使用。
分享到:
相关推荐
在Android平台上,绘制图形是一项基本任务,涉及到多个关键类,如Bitmap、Drawable和Canvas,以及Paint。这些类共同构成了Android图形系统的核心,使得开发者能够创建丰富的用户界面和自定义视图。 首先,Bitmap是...
Android 实现把bitmap图片的某一部分的颜色改成其他颜色 在 Android 开发中,bitmap 图片处理是一个非常重要的方面,特别是在图片颜色修改方面,今天我们将介绍如何实现把 bitmap 图片的某一部分的颜色改成其他颜色...
Android 画图程序源码分析 在Android平台上开发一款画图程序,涉及到许多核心技术和组件。这个"Android 画图程序源码.rar"文件提供了一个实际的案例,可以帮助我们深入理解Android图形系统的工作原理,以及如何创建...
这个"Android画图示例集合"项目,通过实际代码示例,将帮助开发者熟悉以上知识点,并能熟练地在Android应用中进行自定义图形绘制。在实践中不断探索和学习,你将能够创建出更多创新和吸引人的用户界面。
在Android平台上,开发人员可以利用Canvas和Bitmap等组件来实现丰富的图形绘制功能,包括但不限于画图、签名等交互式操作。Canvas是Android图形系统的核心部分,它提供了在内存中的Bitmap上绘制各种形状、线条和图像...
本教程将通过分析提供的“android画图程序源代码”来深入理解Android图形绘制的基本概念和技术。 首先,Android提供了多种方式来绘制图形,主要包括Canvas、Paint、Path以及Bitmap等类。Canvas是绘画的基础,它提供...
下面将详细介绍Android画图的相关知识点。 一、Canvas类 Canvas是Android图形系统的核心,它是绘制2D图形的画布。你可以将Canvas想象为一张白纸,你可以在这张纸上绘制各种图形。Canvas通常与Bitmap结合使用,...
这个源码示例提供了一个完整的Android画图应用程序,可以帮助学生和开发者了解如何在Android环境中创建交互式的绘图工具。下面我们将详细探讨这款应用的核心知识点。 1. **Android SDK和Eclipse/Android Studio**:...
接下来,深入到【Android画图学习总结(二)——Bitmap.doc】,Bitmap是Android中处理图像的基本类。你可以加载本地图片文件,或者通过BitmapFactory解析资源文件得到Bitmap对象。在内存管理中,需要关注Bitmap的...
在Android平台上,画图功能是通过Canvas类和相关的图形API实现的,这使得开发者能够创建丰富的自定义视图和交互式图形界面。本压缩包"android 画图集合.zip"包含多个示例项目,旨在帮助开发者深入理解Android图形...
在Android平台上,开发一款画图板应用涉及到许多关键知识点,...综上所述,"android画图板示例程序"是一个涉及自定义View、Canvas绘图和触摸事件处理的项目,通过这些技术,开发者可以构建一个功能丰富的互动画图应用。
《Android画图工具源码详解》 在移动设备领域,Android操作系统以其开源、灵活的特点深受开发者喜爱。在Android平台上开发一款画图工具,不仅可以满足用户日常的手绘需求,还可以为艺术家提供创作空间。本篇文章将...
5. **图片保存**:Android的`Bitmap`类用于表示位图图像,它可以用于保存用户在画图板上绘制的内容。我们可以将`Canvas`上的内容转换为`Bitmap`,然后利用`MediaStore.Images.Media.insertImage()`或`Bitmap....
本文将详细介绍Android画图技术的核心知识点,包括资源的获取、Bitmap、Drawable、Animation以及Paint等方面的内容。 #### 二、资源的获取 在开始画图之前,我们需要了解如何在Android应用中获取资源。Android应用...
本教程将带你走进Android画图的世界,让你从新手快速成长为能绘制出丰富多彩图形的开发者。在2016年的这个系列教程中,我们将重点探讨如何在Android中利用Canvas和Drawable进行图形绘制。 首先,你需要了解`Canvas`...
在Android应用开发中,画图工具是一个常见的功能需求,它允许用户进行自由绘画、图形编辑或者图表绘制等操作。这份"Android 画图工具源码.zip"提供的就是一个完整的Android应用程序项目,专门用于画图功能的实现。...
本文将深入探讨如何在Android中使用`Matrix`进行画图,以帮助开发者更好地理解和运用这一关键概念。 `Matrix`(矩阵)在数学中是一种线性代数结构,而在Android的绘图系统中,它被用来表示2D图形的各种变换,如平移...
在Android平台上,开发一款画图程序可以为用户提供一个创意表达的平台,让他们通过手指或触控笔绘制出自己的作品。这个"Android代码-画图程序源码.zip"压缩包包含了实现这样一个功能的源代码,我们可以从中学到许多...
以上就是开发一个简单的Android画图应用所涉及的关键技术点,通过这些技术,我们可以创建一个功能丰富的画图工具,满足用户的基本需求。不过,实际开发过程中还需要考虑性能优化、用户体验等因素,以提供更优质的...