Bitmap与Shader

本文详细介绍了Bitmap的常用方法,如getPixel()、extractAlpha()和getPixels(),并探讨了 stride 在处理像素数据时的重要性。此外,还讨论了Shader的概念,特别提到了BitmapShader和RadialGradient的使用方式,解释了如何通过BitmapShader将图片绘制成各种形状,以及RadialGradient的参数含义和应用。
摘要由CSDN通过智能技术生成

Bitmap

常用方法

        compress()将bitmap转换到一个输出流中的,因此可以用它把bitmap转换成文件。其中第二个参数指的是把bitmap转换成图片文件后,图片的质量。100最大,0最小,(如果第一个参数是PNG,那么第二个参数不起作用),转换成文件后,图片的宽、高像素值不变,但是大小已经变小。由于第二个参数可以改变文件的大小,所以把bitmap转换成byte[]时,数组的长度会变化的。

        getPixel():得到指定点的颜色值。返回的是int,可以通过Color.red(),Color.green(),Color.blue()和Color.alpha()得到相应的rgba值。

        extractAlpha():新生成一个bitmap对象。该bitmap的形状和原bitmap的形状一样,但只包含原bitmap的a值,并不包含rgb值。示例如下:

	private class SampleView extends View {
		private Paint mP;
		private Bitmap mB2;
		public SampleView(Context context) {
			super(context);
			init();
		}
		private void init() {
			Bitmap bitmap = BitmapFactory.decodeResource(getResources(),
					R.drawable.ic_launcher);
			mB2 = bitmap.extractAlpha();//提取原图的a值,并保留形状。
			mP =
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值