با سلام و سپاس خدمت کاربران عزیز سایت یاهو ۹۸ YAHOO
امروز با قطعه کدی کاربردی دیگر در خدمتتون هستیم امیدوارم مطلب فوق مورد قبول شما قرار گیرد .
✅ دایره ای کردن تصاویر با کدهای جاوا :
Dim jo As JavaObject
jo.InitializeContext
Dim bm As Bitmap
bm.Initialize(File.DirAssets,"ax.jpg")
bm = jo.RunMethod("getRoundBitmap",Array(bm,Colors.Transparent,0))
ImageView1.Bitmap = bm
ImageView1.Gravity = Gravity.FILL
🔴 کدهای جاوای زیر را بین Sub ها قرار دهید:
#If Java
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Path;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.Path.FillType;
import android.graphics.Paint;
import android.graphics.Color;
public static Bitmap getRoundBitmap(Bitmap scaleBitmapImage, int borderColor, int borderWidth) {
int targetWidth = 1000;
int targetHeight = 1000;
int radius = Math.min((targetHeight - 5)/2, (targetWidth - 5)/2);
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);
Paint p = new Paint();
p.setAntiAlias(true);
// canvas.drawBitmap(sourceBitmap, 4, 4, p);
p.setXfermode(null);
p.setStyle(Paint.Style.STROKE);
p.setColor(borderColor);
p.setStrokeWidth(borderWidth);
canvas.drawCircle((targetWidth / 2) , (targetHeight / 2) , radius, p);
return targetBitmap;
}
public static Bitmap addSquareBorder(Bitmap bmp, int borderSize, int bordercolor) {
Bitmap bmpWithBorder = Bitmap.createScaledBitmap(bmp, bmp.getWidth() + borderSize * 2, bmp.getHeight() + borderSize * 2, false);
Canvas canvas = new Canvas(bmpWithBorder);
canvas.drawColor(bordercolor);
canvas.drawBitmap(bmp, borderSize, borderSize, null);
return bmpWithBorder;
}
#End If
