首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

图片画阴影有关问题

2012-08-02 
图片画阴影问题之前遇到的一个问题,一直忘记了,突然想起了,求解答问题如下:有一个图片资源,定义了自己的vi

图片画阴影问题
之前遇到的一个问题,一直忘记了,突然想起了,求解答


问题如下:

  有一个图片资源,定义了自己的view,重写了ondraw,要实现的功能是,把这个图片draw出来,并且在右下方偏移
(10,10)像素,有一个这个图片的阴影。


遇到的问题:

1、如果直接用paint.setShadowLayer()这个函数,他阴影层会直接再把这个图片画一次,不是黑色的阴影。而直接drawRect就不会有这样的问题

2、我想到的是,在下面先画一个大小和图片一样的rect,然后再在上面盖上图片,但是这样又会有问题,因为图片可能有透明的边界,比如一个图片是48X48的,但是他实际上里面有东西的地方没这么大,这样也是不行的



如果实现这个效果吧。。。

[解决办法]
http://blog.csdn.net/hxdanya/article/details/6619877
[解决办法]
或者
//draw bitmap shadow
public Bitmap DrawShadowImg(Bitmap bitmap)
{
BlurMaskFilter blurFilter = new BlurMaskFilter(4, BlurMaskFilter.Blur.OUTER);
Paint shadowPaint = new Paint();
shadowPaint.setMaskFilter(blurFilter);

int[] offsetXY = new int[2];
Bitmap shadowImage = bitmap.extractAlpha(shadowPaint, offsetXY);
Bitmap shadow = shadowImage.copy(Bitmap.Config.ARGB_8888, true);

Canvas c = new Canvas(shadow);
c.drawBitmap(bitmap, -offsetXY[0], -offsetXY[1], null);
return shadow;
}

热点排行