2013-07-26 7 views
12

In meiner App zeichne ich Text auf Android Canvas;Wie zeichnen Sie kursiven Text auf Android Canvas?

Jetzt zur Unterstützung underline und bold Ich nehme Hilfe von malen Objekt;

Paint paint = new Paint(); 

paint.setUnderlineText(true); 
paint.setFakeBoldText(true); 

paint.setColor(color); 
paint.setTextSize (font_size); 
canvas_obj.drawText(text,x,y,paint); 

Mit diesem Code bekomme ich fett und unterstrichen Text;

Ich mag auch italic machen,

I App weiter für Android 2.2 entwickle.

wie geht das?

Edit:

I Schriftart Objekt mit einer externen Schriftartdatei erstellt setze externen Schriftart zu unterstützen; Für Kursiv verwende ich folgenden Code

paint.setTypeface(Typeface.create(external_font_type_face,Typeface.ITALIC)); 

Dies auch nicht funktioniert, Getestet auf Samsung Galaxy Ace (android 2,2)

Antwort

22

Sie diese Methode verwenden können:

paint.setTypeface(Typeface.create(Typeface.DEFAULT, Typeface.ITALIC)); 

Es ist für mich funktioniert .

+0

Ich bin schon ein Schriftbild-Objekt (mit einer externen Schriftartdatei erstellt,) in Farbe; Ich entwickle App für Android 2.2 weiter –

+0

@Swarnendu Typeface wurde in Android 1.5 implementiert – TN888

+0

@ Ty221 Leider funktioniert es nicht, Einstellung Schriftbild zu malen Objekt ersetzt zuvor gesetzt Typrface-Objekt auf das Paint-Objekt (die externe Schriftart unterstützt wurde eingestellt); also weder ich bekomme die externe Schriftart Unterstützung noch Italic Text mit Standardschrift .. :-( –

0

verwenden:

paint.setTextSkewX(-0.25f); 
+1

Während dieser Codeausschnitt kann die Frage lösen, [einschließlich einer Erklärung ] (http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) hilft wirklich, die Qualität Ihrer Post zu verbessern. Denken Sie daran, dass Sie die Frage für Leser in der Zukunft beantworten, und Diese Personen kennen die Gründe für Ihren Codevorschlag möglicherweise nicht. – Isma