mirror of https://github.com/ThmmyNoLife/mTHMMY
Ezerous
5 years ago
5 changed files with 3 additions and 64 deletions
@ -1,47 +0,0 @@ |
|||||
package gr.thmmy.mthmmy.utils.ui; |
|
||||
|
|
||||
import android.graphics.Bitmap; |
|
||||
import android.graphics.BitmapShader; |
|
||||
import android.graphics.Canvas; |
|
||||
import android.graphics.Paint; |
|
||||
|
|
||||
import com.squareup.picasso.Transformation; |
|
||||
|
|
||||
/** |
|
||||
* Used as parameter for PICASSO library's {@link com.squareup.picasso.RequestCreator#transform(Transformation) transform} method. |
|
||||
* @see com.squareup.picasso.Picasso Picasso |
|
||||
*/ |
|
||||
public class CircleTransform implements Transformation { |
|
||||
@Override |
|
||||
public Bitmap transform(Bitmap source) { |
|
||||
int size = Math.min(source.getWidth(), source.getHeight()); |
|
||||
|
|
||||
int x = (source.getWidth() - size) / 2; |
|
||||
int y = (source.getHeight() - size) / 2; |
|
||||
|
|
||||
Bitmap squaredBitmap = Bitmap.createBitmap(source, x, y, size, size); |
|
||||
if (squaredBitmap != source) |
|
||||
source.recycle(); |
|
||||
|
|
||||
// For GIF images
|
|
||||
Bitmap.Config config = source.getConfig() != null ? source.getConfig() : Bitmap.Config.ARGB_8888; |
|
||||
Bitmap bitmap = Bitmap.createBitmap(size, size, config); |
|
||||
|
|
||||
Canvas canvas = new Canvas(bitmap); |
|
||||
Paint paint = new Paint(); |
|
||||
BitmapShader shader = new BitmapShader(squaredBitmap, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP); |
|
||||
paint.setShader(shader); |
|
||||
paint.setAntiAlias(true); |
|
||||
|
|
||||
float r = size / 2f; |
|
||||
canvas.drawCircle(r, r, r, paint); |
|
||||
|
|
||||
squaredBitmap.recycle(); |
|
||||
return bitmap; |
|
||||
} |
|
||||
|
|
||||
@Override |
|
||||
public String key() { |
|
||||
return "circle"; |
|
||||
} |
|
||||
} |
|
Loading…
Reference in new issue