Leinwand drawtext Richtung
wie zu machen, dass der text vertikal geschrieben? wie dreht den text um 90 Grad?
Schreiben Sie jeden Buchstaben einzeln, das ist doof, aber jetzt ,ich weiß nicht, einen anderen Weg.
Paint paint = new Paint();
public DrawView(Context context, double arr[])
{
super(context);
paint.setColor(Color.BLACK);
}
@Override
public void onDraw(Canvas canvas)
{
canvas.drawText("Test",50, 50, paint);
}
- Ihre Frage ist etwas unklar: willst du drehen Sie den vollständigen text (so müssen Sie die Option " drehen Sie Ihren Kopf um es zu Lesen), oder wollen Sie die Charaktere unter einander (und nicht verdreht)?
- Ich interessiere mich für beide Optionen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einfach drehen von text (oder etwas anderes) ist einfach: Verwenden Sie die
rotate()
Methode zum drehen der Leinwand (danach ist es zurück gedreht, sonst alles, was Sie zeichnen, wird gedreht):Den
save()
undrestore()
Methoden bzw. speichern den Zustand der Leinwand und stellt diese wieder her. So der rest von Ihr gezeichneten Elemente werden nicht gedreht. Wenn Sie nur wollen, zu malen, der text diese beiden Methoden sind nicht notwendig.Wenn Sie wollen, um die Zeichen des Strings unter einander, benötigen Sie jedes Zeichen separat. Zuerst würden Sie zu erhalten müssen die schriftart, die Höhe und beim zeichnen jedes Zeichen, das Sie brauchen, um erhöhen Sie die y-Koordinate mit diesem in der Höhe über und über wieder.
save()
!Richtige version ist :
Leinwand canvas_front = new Canvas(bitmap_front);