Bitmap是一个final类,因此不能被继承。Bitmap只有一个构造方法,且该构造方法是没有任何访问权限修饰符修饰,官方解释为private的
所以Bitmap不能直接new。但是我们可以利用Bitmap的静态方法createBitmap()和BitmapFactory的decode系列静态方法创建Bitmap对象。
ps:Bitmap.createBitmap()与其说是创建Bitmap对象,个人感觉不如说是对bitmap对象进行 *** 作然后得到的新的Bitmap对象
1)createBitmap(Bitmap source, int x, int y, int width, int height):从原位图中指定坐标点(x,y)开始,从中挖取宽width、高height的一块出来,创建新的Bitmap对象。
2)createScaledBitmap(Bitmap source, int dstWidth, int dstHeight, boolean filter):对源位图进行缩放,缩放成指定width、height大小的新位图对象。
3)createBitmap(int width, int height, Bitmap.Config config):创建一个宽width、高height的新位图。
4)createBitmap(Bitmap source, int x, int y, int width, int height, Matrix matrix, boolean filter):从原位图中指定坐标点(x,y)开始,
从中挖取宽width、高height的一块出来,创建新的Bitmap对象。并按Matrix指定的规则进行变换。
BitmapFactory是一个工具类,它提供了大量的方法来用于从不同的数据源来解析、创建Bitmap对象
1)decodeFile(String pathName):从pathName指定的文件中解析、创建Bitmap对象。
2)decodeFileDescriptor(FileDescriptor fd):从FileDescriptor对应的文件中解析、创建Bitmap对象。
3)decodeResource(Resources res, int id):根据给定的资源ID从指定资源中解析、创建Bitmap对象。
4)decodeStream(InputStream is):从指定的输入流中解析、创建Bitmap对象
5)decodeByteArray(byte[] data, int offset, int length):从指定的字节数组的offset位置开始,将长度为length的字节数据解析成Bitmap对象。
二、简易优化
谷歌推荐压缩方式
Bitmap对象是不支持鼠标等事件的,如果要添加这类事件,就必须要放到容器里,你的方法是正确的,你这里的例子,不显示,原因是bit的bitmapData为null,所以,bit根本就不包含任何像素。1、首先在PPT中找到“插入”选项,点击“对象”按钮。
2、在“对象类型”中选择需要插入的对象程序,例如选择“bitmap image”并点击“确定”。
3、之后系统自动打开位图图像程序,可以在其中进行 *** 作。
4、在PPT页面中相应出现在位图画像中 *** 作的图形,点击选中该图形。
5、点击鼠标右键,即可在菜单栏中看到“设置对象格式”选项。
6、点击该选项,可以对插入的对象进行格式及属性的修改。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)