本文介绍了Android 位图裁剪中心的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有正方形或矩形的位图.我采取最短的一边做这样的事情:
I have bitmaps which are squares or rectangles. I take the shortest side and do something like this:
int value = 0; if (bitmap.getHeight() <= bitmap.getWidth()) { value = bitmap.getHeight(); } else { value = bitmap.getWidth(); } Bitmap finalBitmap = null; finalBitmap = Bitmap.createBitmap(bitmap, 0, 0, value, value);然后我使用这个将其缩放为 144 x 144 位图:
Then I scale it to a 144 x 144 Bitmap using this:
Bitmap lastBitmap = null; lastBitmap = Bitmap.createScaledBitmap(finalBitmap, 144, 144, true);问题是它裁剪了原始位图的左上角,有人有裁剪位图中心的代码吗?
Problem is that it crops the top left corner of the original bitmap, Anyone has the code to crop the center of the bitmap?
推荐答案这可以通过以下方式实现:Bitmap.createBitmap(source, x, y, width, height)
This can be achieved with: Bitmap.createBitmap(source, x, y, width, height)
if (srcBmp.getWidth() >= srcBmp.getHeight()){ dstBmp = Bitmap.createBitmap( srcBmp, srcBmp.getWidth()/2 - srcBmp.getHeight()/2, 0, srcBmp.getHeight(), srcBmp.getHeight() ); }else{ dstBmp = Bitmap.createBitmap( srcBmp, 0, srcBmp.getHeight()/2 - srcBmp.getWidth()/2, srcBmp.getWidth(), srcBmp.getWidth() ); }更多推荐
Android 位图裁剪中心
发布评论