2013-11-29 2 views
6

привет, я хочу изменить свой размер шрифта, используя краску, холст в android. Мой код здесь. как я могу это сделать?Как андроид устанавливает пользовательский шрифт в холсте?

public class MainActivity extends Activity 

{ 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 
Canvas canvas = new Canvas(); 
Typeface tf = Typeface.createFromAsset(getAssets(), "RECOGNITION.ttf"); 
    Paint paint = new Paint(); 
    paint.setTypeface(tf); 
    canvas.drawText("Lorem ipsum", 0, 0, paint); 


} 
} 

Может ли любой орган помочь мне решить проблему? Я прочитал несколько руководств, но не подстав. Я прочитал несколько сообщений о стеке, столкнувшись с некоторыми проблемами.

+0

, где есть у положить файл "myfont.ttf"? –

+0

У вас есть папка с активами? –

+0

@AnilBhatiya он использовал FontCache, в котором может быть написан какой-то код. –

ответ

19

создать "шрифты" папку в папке "активы". После этого поместите файл шрифта в папку «fonts» и напишите ниже код.

Typeface tf =Typeface.createFromAsset(getAssets(),"fonts/YOURFONT.ttf"); 
    Paint paint = new Paint(); 
    paint.setTypeface(tf); 
    canvas.drawText("Sample text in bold RECOGNITION",0,0,paint); 
+0

пустое шоу активности не отображает текст на экране – NadeemYousaf

+0

Запишите этот код в 'onCreate()' method. – zanky

+0

Да, я вставляю его в игру. – NadeemYousaf

1

Используйте это:

 
    Typeface tf = Typeface.createFromAsset(getAssets(),"RECOGNITION.ttf"); 
    Paint paint = new Paint(); 
    paint.setTypeface(tf); 
    canvas.drawText("Sample text in bold RECOGNITION",0,0,paint); 
+0

Какую ошибку вы получаете? –

+0

Вы ввели этот код в onCreate? –

+0

Я отредактировал свой ответ, чтобы увидеть change to getAssets и попробуйте –

0

Используйте следующий:

Paint paint = new Paint(); 
paint.setTypeface(tf); 
paint.setTextSize(yourTextSize); 
canvas.drawText("Lorem ipsum", 0, 0, paint); 
Смежные вопросы