Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
//License from project: Apache License 

import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;

public class Main {
    public static Bitmap getRoundedCornerBitmap(Bitmap bitmap, int backgroundColor, int borderColor) {
        Bitmap output = Bitmap.createBitmap(bitmap.getWidth() + 12, bitmap.getHeight() + 12,
                Bitmap.Config.ARGB_8888);

        Canvas canvas = new Canvas(output);
        //canvas.drawARGB(Color.alpha(backgroundColor), Color.red(backgroundColor), Color.green(backgroundColor), Color.blue(backgroundColor));

        Paint borderPaint = new Paint();
        borderPaint.setAntiAlias(true);
        borderPaint.setColor(borderColor);
        borderPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER));
        borderPaint.setShadowLayer(2.0f, 0.0f, 2.0f, Color.BLACK);

        int centerWidth = output.getWidth() / 2;
        int centerHeight = output.getHeight() / 2;
        canvas.drawCircle(centerWidth, centerHeight, ((centerWidth + centerHeight) / 2) - 4, borderPaint);

        Paint paint = new Paint();
        paint.setAntiAlias(true);

        Rect rectS = new Rect(0, 0, output.getWidth() - 12, output.getHeight() - 12);
        Rect rectD = new Rect(0, 0, output.getWidth(), output.getHeight());

        paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_ATOP));
        canvas.drawBitmap(bitmap, rectS, rectD, paint);

        return output;
    }
}