본문 바로가기
Android/Android

[Android][Java]Custom 폰트 적용하기

by 하루디 2023. 6. 30.

 

📌폰트 준비하기

  • 폰트는 ttf 형태여야 한다
    • 리소스로 인식될 수 있는 폰트파일 (.ttf, .ttc, .otf, .xml)
  • 폰트의 파일명은 소문자여야한다.
  • → 지금 이클립스에서 쓰는 프로젝트보면 파일이 소문자는 아님
  • 라이센스확인하고 프로젝트에서 사용가능한지 확인할 것

 

📌폰트 추가하기

  • 새로운 폴더를 생성한다
  • 안드로이드 스튜디오는 res/Folder/FontFolder가 따로있다
  • 이클립스는 프로젝트 단에 font 폴더를 추가해서 만든다
  • → 우리 프로젝트 폴더 구성 projectname/asset/font

 

📌폰트 적용하기

  • xml 에서 직접 폰트를 적용하려면 fontFamily 속성을 사용하자
    android:fontFamily="@font/notosans_thin" //@font/폰트파일이름
    
    font.xml도 생성해야함
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
    <font
        android:fontStyle = "normal" //기울기 
        android:fontWeight = "400"   //폰트의 두께
        android:font = "@font/notosans_thin"/> //폰트 리소스
</font-family>

 

  • → 안드로이드 스튜디오에서만 이렇게 되는 것 같아

 

  • main 코드에서 구현시 Typeface를 사용한다.
  • → 블로그는 res 밑에 fontFolder를 만들었기 떄문에 resourceCompat을 사용한다.
  • → 리소스에서 호출해서 사용 시 getFont를 적용한다.
    tf_normal = Typeface.**createFromAsset**(getApplicationContext.getAsset, "fonts/"+"notosans_thin");
    
    → font가 asset공간에 넣어져있어서 CreateFromAsset 사용함

 

  • 8.0버전 미만에서 적용
  • ⇒ 8.0버전(API 26) 이후부터 폰트는 리소스로 취급하도록 변경됨
tf_normal = ResourceCompat.getFont(this, R.font.notosans_thim);

 

 

📌Refs


[Android] 안드로이드 - 커스텀 폰트(Custom Font) 적용하기

[안드로이드] 내가 원하는 글씨체 폰트(Font) 적용하는 방법

[안드로이드] 폰트 리소스 적용

상업적 이용가능 폰트

https://suchshop.tistory.com/181

https://noonnu.cc/index

'Android > Android' 카테고리의 다른 글

[Andorid With Eclipse] LOG 자동완성 설정하기  (0) 2022.03.19