android – 如何只显示位图的一部分 –

前端之家收集整理的这篇文章主要介绍了android – 如何只显示位图的一部分 –前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图创造一个移动的背景.我的目标是让一个巨大的位图单独滚动,使它看起来好像在移动.但首先我需要弄清楚如何只显示位图的一部分.香港专业教育学院尝试过此代码,但一直没有成功.这个子集是我在这种情况下寻找的吗? canvas.drawBitmap(位图,“”“子集”“”src,dst,paint)

这是方法说明
bitmap要绘制的位图======
src可能为null.要绘制的位图的子集=======
dst位图将缩放/转换为适合的矩形

解决方法

Canvas.drawBitmap(Bitmap bitmap,Rect src,Rect dst,Paint paint);

它允许我们指定要绘制的位图的一部分
通过第二个参数. Rect类保存左上角和右下角
矩形的坐标.当我们通过src指定Bitmap的一部分时,我们就这样做了
在Bitmap的坐标系中.如果我们指定null,将使用完整的Bitmap.
第三个参数定义应该绘制位图部分的位置,
再次以Rect实例的形式.
这次角落坐标是在Canvas目标的坐标系中给出的(View或其他Bitmap).
令人惊讶的是,这两个矩形的大小不一定相同.如果我们指定
目标矩形的大小小于源矩形,然后是Canvas
自动为我们扩展.指定更大的目的地也是如此
长方形.

Rect dst = new Rect();
dst.set(50,50,350,350);
canvas.drawBitmap(bmp,null,null);

这里bmp是一个原始大小为160 * 183像素的位图.使用Rect将其缩放到250 * 250像素.

猜你在找的Android相关文章