Text auf Zeichenblatt

  • Antworten:5
  • OffenNicht stickyBentwortet
  • Forum-Beiträge: 144

27.03.2019, 18:00:05 via Website

Hallo zusammen

Ich möchte auf einem Zeichenblatt (canvas) einen Text ausgeben. Doch es erscheint einfach nichts.

Die Farbe habe ich wie folgt definiert:

zeichenfarbe.setAntiAlias(true);
    zeichenfarbe.setColor(Color.WHITE);
    zeichenfarbe.setStyle(Paint.Style.FILL);

Wenn ich nun den Text ausgebe erscheint einfach nichts.

canvas.drawText("Test", 1, 1, zeichenfarbe);

Wenn ich aber folgendes schreibe stürzt das Programm ab.

canvas.drawText("Test", 1, 1, 10, 10,zeichenfarbe);

Was mache ich nur falsch?

Gruss Renato

Diskutiere mit!
Beste Antwort
Pascal P.
  • Mod
  • Blogger
  • Forum-Beiträge: 10.479

27.03.2019, 18:13:37 via Website

Wenn ich aber folgendes schreibe stürzt das Programm ab.

Was ist der genaue Error Log?

Vermutlich musst du aber noch die Textgröße vorher errechnen:
https://stackoverflow.com/a/31367697/4975457

Oder: Schreibst du hier weiss auf Weiss? Da die Schrift weiss ist?

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 144

27.03.2019, 18:17:55 via Website

Ciao Pascal

Nein der Hintergrund ist schwarz. Aber ich versuche es mal mit der Grösse vom Text.

Gruss Renato

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 144

27.03.2019, 18:24:33 via Website

Ciao Pascal

Ich habe dein Beispiel nach gebaut. Erscheint immer noch nichts möglicherweise liegt das Problem ganz wo anders.

Gruss Renato

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 144

27.03.2019, 18:30:42 via Website

Ciao Pascal

Fehlalarm! Wenn ich die richtige Paint verwende erscheint der Text in der Mitte.

Gruss Renato

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 775

27.03.2019, 22:45:36 via Website

Hallo du willst deinen Text wohl oben links ausgeben. Das Koordinaten System von canvas beginnt bei android oben links mit 0,0.
Nun ist es bei der drawtext Methode so das der Start des Textes auf der gedachten Text Zeile beginnt. Also links unten vom Text. Du hast aber die Position 1,1 gewählt somit würde der Text oberhalb des Bildschirms erscheinen was natürlich nicht geht.
Deshalb siehst du nichts.

Benutze mal zb 100,100 als position.

— geändert am 27.03.2019, 23:32:02

Hilfreich?
Diskutiere mit!