رفتن به مطلب
  • 0

دادن corner radius به ImageView


ctrain

سوال

سلام دوستان. من یه ایمیج ویو دارم و میخوام لبه هاشو کمی گرد کنم و از حالت تیزی در بیاد. خیلی سرچ کردم ولی بیشتر کتابخونه ها برای گرد کردنه. با آریا فتوشاپ و circle imageview هم زدم ولی تغییری ایجاد نمیشه. باید چیکار کنم؟ تشکر

لینک ارسال
به اشتراک گذاری در سایت های دیگر

2 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

سلام علیکم .چندتا راه داره که قبلا تو انجمن بهش اشاره شده :

یکی cornerRadius  موجود در تنظیمات  خود ایمیج ویو در لیوت بیسیک فور هست 

یکی استفاده از AriaPhotoshop  هست 


*** کلاس AriaPhotoshop به AriaLib انتقال داده شد ، AriaLib رو تیک بزنین و کد زیر رو بنویسین


Dim a As AriaPhotoshp
ImageView3.Bitmap=a.GetCircleBitmap(LoadBitmap(File.DirAssets,"1.png"))

دیگه استفاده از پارامترهای کتابخانه ariaglide هست 

Gl.Load(URL.AsBitmap.IntoTarget("Glide",Tag)
 

Sub Glide_OnBitmapReady(bitmap As Bitmap,Tag As Object)
'Code Gerd Kardan Inja Bayad Bashe
End Sub
 

دیگه استفاده از کد های جاوا هست که توانجمن بهش اشاره شده (ظاهرا ) .یعنی این کد:

عکس گرد با حاشیه رنگی
سلام با کد زیر قادر خواهید بود که هر عکسی رو گرد با حاشیه رو هم هر رنگی که خواستید بدید.
تیک کتابخانه JavaObject رو هم بزنید

 



Dim nativeMe As JavaObject
 
nativeMe.InitializeContext
 
bm.Initialize(File.DirAssets,"parrot.jpg")
	

Dim borderWidth As Int = 50
Dim borderColor As Int = Colors.White
	bm1 = nativeMe.RunMethod("getRoundBitmap",Array(bm,borderColor, borderWidth)) 
	ImageView1.Bitmap = bm1	
 
#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

این لینکاروهم ببینید

گردکردن تصویر1

گردکردن تصویر2

لینک گرد کردن 3

اینم دوتا سورس آماده واسه گرد کردن و دایره ای کردن تصاویر :

دو سورس مخصوص دایره ای کردن تصاویر

کتابخانه مورد نیاز :RoundedImageViewLib

تصویر نتیجه دوتا سورس هم اینجوری میشه !

2222222.png111111.jpg

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...