mit canvas auf Bild zeichnen

  • Antworten:3
  • Bentwortet
Leo K.
  • Forum-Beiträge: 56

09.03.2011, 11:38:20 via Website

Hi leute ich häng an einem wahrscheinlich sehr einfachem Problem:

Ich hab ein bild und will mittels canvas etwas auf das bild zeichnen, aber mein code übernimmt das irgendwie net -.-:

1Canvas canvas = new Canvas();
2 Drawable bit = getResources().getDrawable(R.drawable.suche);
3 Paint paint = new Paint();
4 paint.setColor(Color.RED);
5 Bitmap _scratch = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
6 canvas.drawColor(Color.BLACK);
7 canvas.drawBitmap(_scratch, 10, 10, null);
8 canvas.drawCircle(100, 100, 100, paint);
9 bit.draw(canvas);

und der geht auch net!

1Drawable bild = getResources().getDrawable(R.drawable.suchelinks);
2 Bitmap myBitmap = Bitmap.createBitmap(bild.getIntrinsicWidth(), bild.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
3 Canvas c = new Canvas(myBitmap);
4 paint = new Paint();
5 paint.setColor(Color.RED);
6 _scratch = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
7 c.drawColor(Color.BLACK);
8 c.drawBitmap(_scratch, 10, 10, null);
9 c.drawCircle(100, 100, 100, paint);
10 bild.draw(c);

das bild wird in einer ImageView angezeigt, aber es funktioniert nicht, eigentlich sollte ja jetzt nen kreis und das icon drauf sein -.-

wer mir helfen kann bitte antworten, hab gestern schon ewig lang rumprobiert und gesucht

LG Leo

Antworten
Denny Sandner
  • Forum-Beiträge: 31

09.03.2011, 21:38:13 via Website

Hallo!

Du musst dein Bild noch dem ImageView zuweisen.
Glaube -> DeinImageView.setImageBitmap(bild);

MfG
Denny

Antworten
Leo K.
  • Forum-Beiträge: 56

10.03.2011, 09:32:36 via Website

danke für deine Antwort aber:

1. ist "bild" ein drawable
2. tu ich meiner ImageView SuchBild das bild mit SuchBild.setBackgroundDrawable(bild); zuweisen, hab nur weggelassen weil ich dachte es wäre klar...

ALSO:
Weiß wirklich keiner wie ich einen kreis auf ein vorhandenes Bild(was ich vom drawable ordner nehme) zeichne und es dann in ner Image View anzeigen lasse???

Antworten
Leo K.
  • Forum-Beiträge: 56

10.03.2011, 20:20:18 via Website

Habs entlich gefunden!!

1Bitmap bitmap = Bitmap.createBitmap(667, 300, Bitmap.Config.ARGB_8888);
2Canvas canvas2 = new Canvas(bitmap);
3
4Paint paint2 = new Paint();
5 paint2.setStyle(Paint.Style.STROKE); //Zeichnet einen Ring
6 paint2.setStrokeWidth(1);
7 paint2.setAntiAlias(true);
8 paint2.setStrokeCap(Cap.ROUND);
9 paint2.setColor(Color.RED);
10 int circleSize = 24;
11
12SuchBild.setImageBitmap(bitmap);

Antworten