[플러터] Font 변경하는 방법

2020. 12. 14. 18:38·Flutter/Flutter Widget Design

플러터에서 글꼴, 폰트를 변경하는 방법이다.

 

 

프로젝트 설정

1. 먼저 사용할 폰트를 프로젝트내에 넣어준다. 일반적으로 assets/font/ 폴더 내에 넣는다.

2. pubspec.yaml의 최하단에 보이는 fonts:에 아래의 예시처럼 작성한다.

  fonts:
    - family: Yanolja
      fonts:
        - asset: assets/font/yanolja_Bold.otf
          weight: 700
        - asset: assets/font/yanolja_Regular.otf

    - family: Jalnan
      fonts:
        - asset: assets/font/JalnanOTF.otf
          style: italic

예시 코드에서 사용하고자 하는 폰트는 Yanolja체와 Jalnan체이다. family가 코딩 시 사용할 폰트의 이름이다.

원하는대로 변경하면 된다. 일반적으로 폰트는 크기나 굵기에 따라 몇 가지의 파일로 나뉜다.

family는 동일하지만 다른 사이즈의 폰트를 하나로 묶는다고 생각하면 된다. 예시와 같이 폰트 아래에 weight나 style을 지정해주면 Yanolja 폰트 사용시 fontweight가 w700일 때 yanolja_Bold체를 불러오고, 나머지의 경우에는 yanolja_Regular체를 불러오게 되는 것이다.

 

 

사용

폰트의 사용에는 2가지 유형이 있다.

첫 째는, 일반적인 사용이고 둘 째는, 여러 국가의 서비스를 지원하는 경우이다.

 

Text('hi',
style: TextStyle(fontFamily: "Yanolja"),),

일반적으로 사용시에는 TextStyle 아래에 fontFamily라는 속성에 앞서 지정해주었던 family를 입력해주면 된다.

반드시 String 타입으로 입력해야한다.

 

Text(
	'hello',
	style: TextStyle(
	fontFamilyFallback:fontFamilyFallback:['Yanolja', 'Jalnan'])
	)

 

여러 국가의 서비스를 지원하는 경우에는 메인으로 사용하고자하는 폰트가 있을 것이다.

하지만 메인 폰트가 지원하지 않는 문자가 있다면 출력이 안되거나 오류가 발생한다. 그래서 플러터는 fontFamilyFallback이라는 속성을 제공해준다. 이 속성에 List<String> 형태로 여러 폰트들을 지정해주면 앞 쪽 폰트를 우선순위로 사용하고 문자가 없다면 다음 폰트를 사용해 문자를 출력해준다.

저작자표시 비영리 변경금지 (새창열림)

'Flutter > Flutter Widget Design' 카테고리의 다른 글

[플러터] ListView 경계선 흐리게 하기  (2) 2021.10.08
[플러터] List View 애니메이션  (0) 2021.08.28
[플러터] 이미지에 그림자 넣기  (1) 2021.08.02
[Flutter] 모서리를 둥글게 / 테두리 넣기  (0) 2020.08.22
'Flutter/Flutter Widget Design' 카테고리의 다른 글
  • [플러터] ListView 경계선 흐리게 하기
  • [플러터] List View 애니메이션
  • [플러터] 이미지에 그림자 넣기
  • [Flutter] 모서리를 둥글게 / 테두리 넣기
박유상의 개발블로그
박유상의 개발블로그
개발블로그
  • 박유상의 개발블로그
    박유상의 개발블로그
    박유상의 개발블로그
  • 전체
    오늘
    어제
    • 전체 (134)
      • Who am I (10)
        • Portfolio (4)
        • Reminiscence (5)
        • Oversea (1)
        • SiliconValley (0)
      • React (36)
        • React Basic (15)
        • React Tech (5)
        • JavaScript (7)
        • TypeScript (3)
        • CSS&HTML (3)
        • Firebase (3)
      • NodeJS (1)
        • NodeJS Basic (1)
      • Flutter (55)
        • Flutter Widget Design (5)
        • Flutter Widget Basic (8)
        • Flutter Tech (18)
        • Flutter Issue (7)
        • Flutter Web (6)
        • About Flutter (2)
        • Firebase (1)
        • Dev Env (1)
        • Dart (7)
      • Programming (31)
        • Web (1)
        • General (0)
        • Algorithm (25)
        • Python (1)
        • VS Code (2)
      • Django (0)
  • 블로그 메뉴

    • Who I AM
    • React
    • NodeJS
    • Flutter
    • Programming
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Flutter
    링고리
    리액트
    Redux
    자바스크립트
    flutter web
    github
    알고리즘
    Lingory
    useRef
    HTML
    플러터 웹
    웹
    탐욕법
    JSON
    map
    Python
    DART
    CSS
    파이썬
    DP
    react
    useTranslation
    JavaScript
    Firebase
    포트폴리오
    useState
    프로그래머스
    플러터
    TypeScript
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
박유상의 개발블로그
[플러터] Font 변경하는 방법
상단으로

티스토리툴바