Ich versuche ein Bild zuzuschneiden und dann die Ecken zu runden, so dass es besser auf dem Bildschirm erscheint.ImageView mit abgerundeten Ecken nach der Skalierung mit ScaleType.CenterCrop
Was konnte ich tun, ist um die Ecken des Bildes, aber das Zuschneiden wird manchmal die Seiten des Bildes abgeschnitten (abhängig von der Größe/Seitenverhältnis des Bildes).
Also, was ich tun möchte, ist die Ernte durchzuführen, dann wenden Sie die abgerundeten Ecken. Wie kann ich das machen?
Abrunden der Ecken des Bildes:
private Bitmap getRoundedCornerBitmap(Bitmap bitmap) {
Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888);
Canvas canvas = new Canvas(output);
final int color = 0xff000000;
final Paint paint = new Paint();
final Rect rect = new Rect(0,0,bitmap.getWidth(), bitmap.getHeight());
final RectF rectF = new RectF(rect);
final float roundpx = 20;
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawRoundRect(rectF, roundpx, roundpx, paint);
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);
return output;
}
Und dann stelle ich die Scaletype des Imageview etwa so: imageView.setScaleType(ScaleType.CENTER_CROP)
Haben Sie eine Lösung gefunden? – enl8enmentnow