La Paint.setTypeface ne fonctionne pas en italique ou je fais quelque chose dans le mauvais sens. Je peux créer du texte normal, gras, monospace et sérif, mais je ne peux pas créer de texte en italique. Il semble toujours normal (ou dans le cas de gras-italique, il semble audacieux).Android Paint.setTypeface ne fonctionne pas en italique
//This will appear monospace
paint.setTypeface(Typeface.MONOSPACE);
canvas.drawText("foo", 10, 10, paint);
//This will appear serif
paint.setTypeface(Typeface.SERIF);
canvas.drawText("foo", 10, 10, paint);
//This will appear bold
paint.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
canvas.drawText("foo", 10, 10, paint);
//This will NOT appear italic <=== PROBLEM
paint.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC));
canvas.drawText("foo", 10, 10, paint);
// This isn't working either <=== PROBLEM
paint.setTypeface(Typeface.create(Typeface.SANS_SERIF, Typeface.ITALIC));
Alors maintenant la question: existe-t-il une solution de contournement connue pour cela? Mon but simple est de dessiner quelques mots avec italique style ...
Cela fonctionne pour moi, merci! –
Avant d'utiliser la méthode setTextSkewX, définissez TypeFace sur normal, sinon un texte sera beaucoup plus incliné que nécessaire sur les périphériques prenant en charge le mode ITALIC pour une police par défaut. Donc, utilisez comme ceci: paint.setTypeface (Typeface.create (Typeface.DEFAULT, Typeface.NORMAL); paint.setTextSkewX (-0.25f); –