圆形图像不平滑且不填满整个圆圈。 (机器人)

时间:2015-03-27 05:11:22

标签: android bitmap android-bitmap

我正在将矩形形状的位图转换为圆形图像,但问题是圆形图像不平滑且没有填满整个圆形。 我用来转换成圆圈的代码:

public Bitmap getRoundedShape(Bitmap scaleBitmapImage) {
    int targetWidth =(int) mContext.getResources().getDimension(R.dimen.prof_pic_diameter);
    int targetHeight =(int) mContext.getResources().getDimension(R.dimen.prof_pic_diameter);

    Bitmap targetBitmap = Bitmap.createBitmap(targetWidth, 
            targetHeight,Bitmap.Config.ARGB_8888);

    Canvas canvas = new Canvas(targetBitmap);
    Path path = new Path();
    path.addCircle(((float) targetWidth - 1) / 2,
            ((float) targetHeight - 1) / 2,
            (Math.min(((float) targetWidth), 
                    ((float) targetHeight)) / 2),
                    Path.Direction.CCW);

    canvas.clipPath(path);
    Bitmap sourceBitmap = scaleBitmapImage;
    canvas.drawBitmap(sourceBitmap, 
            new Rect(0, 0, sourceBitmap.getWidth(),
                    sourceBitmap.getHeight()), 
                    new Rect(0, 0, targetWidth, targetHeight), null);
    return targetBitmap;
}

1 个答案:

答案 0 :(得分:0)

使用我的代码代替您的代码。如果这不是真的。尝试增加位图增加dimen的{​​{1}}值。

dpi