inflearn logo
강의

Khóa học

Chia sẻ kiến thức

[Code Factory] [Nhập môn] Phát triển ứng dụng Flutter 3.0 - Thoát khỏi trình độ sơ cấp ngay hôm nay với 10 dự án!

Hoàn thành thiết kế

pubspec.yaml에서 font를 추가하면서 weight 값을 지정하는 것이 의미가 있는 것인지 문의

43

Myoungsu Park

5 câu hỏi đã được viết

0

안녕하세요. 좋은 강의 만들어 주셔서 감사합니다.

 

pubspec.yaml 에서 font를 추가하면서 weight 값도 추가해주는데요.

이 값일 빼거나, 다른 값으로 변경해서 테스트를 해도 변화가 없는것 같던데요. 그래서 의미가 없는 코드처럼 보여서요.

제가 맞게 파악하고 있는 것일까요?

 

아래 내용은 강사님께서 수업하시면서 말씀하신 내용을 주석으로 남겼던 부분입니다.

 

# 패밀리는 폰트의 종류를 의미한다.(철자는 마음대로 지정해도 된다) fonts: - family: parisienne fonts: #fonts는 실제 적용될 폰트를 의미한다. - asset: asset/font/Parisienne-Regular.ttf #asset에 실제로 사용될 폰트를 선택해준다. - family: sunflower fonts: #Medium, Bold는 더 굵은것이라는 것을 구분하기 위해서 명시해줘야 한다. - asset: asset/font/Sunflower-Light.ttf - asset: asset/font/Sunflower-Medium.ttf weight: 700 # 숫자는 마음대로 넣을 수 있다. 코드에서 weight500를 사용하면 Medium 폰트를 사용할 것이라는 뜻이다. - asset: asset/font/Sunflower-Bold.ttf weight: 500 # 숫자는 마음대로 넣을 수 있다. 코드에서 weight500를 사용하면 Medium 폰트를 사용할 것이라는 뜻이다.

flutter 클론코딩

Câu trả lời 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. Myoungsu Park님!

pubspec.yaml 파일에서 폰트의 weight 값을 지정하는 것은 Flutter 앱에서 폰트의 다양한 굵기를 활용할 수 있게 해주는 중요한 설정입니다. Flutter에서는 동일한 폰트 내에서 여러 굵기를 지원하는 경우, 각 굵기별로 asset과 weight를 정의하여 폰트의 일관성을 유지할 수 있습니다.

왜 weight 값을 설정할까요?

  1. 일관된 스타일 보장: Flutter 앱 내에서 다양한 텍스트 스타일을 적용하기 위해 각 폰트의 굵기를 명시적으로 설정합니다. 예를 들어, 표제글에 Bold체, 본문에 Regular체 등을 사용하여 디자인 일관성을 제공합니다.

  2. 여러 굵기의 폰트 지원: 하나의 폰트 패밀리에서 Light, Medium, Bold와 같은 여러 굵기를 사용할 수 있습니다. 이러한 다양한 굵기를 지원하려면 각 굵기에 맞는 weight 값을 지정해야 합니다.

  3. 명확한 매핑: weight 값을 통해 코드에서 특정 굵기의 폰트를 쉽게 식별하고 사용할 수 있게 됩니다. 예를 들어, 코드에서 weight: 500 을 호출하면 Medium 폰트가 사용되도록 매핑할 수 있습니다.

테스트 결과 변화가 없는 이유

폰트를 추가한 이후에 weight 값을 다른 숫자로 변경했지만 변화가 없었다고 느끼신 이유는 다음과 같습니다:
- 폰트 파일에 따른 제한: 실제로 사용한 폰트 파일이 그 굵기의 여러 변종을 포함하고 있지 않다면, weight를 변경해도 렌더링 결과에 변화가 없을 수 있습니다.
- 잘못된 매핑: pubspec.yaml 파일에서 정의한 weight 값과 사용하는 코드 내 정의가 정확히 매핑되지 않는 경우 폰트 변경이 반영되지 않을 수 있습니다.

관련된 질문과 해결 방법은 다음의 링크를 통해 자세히 살펴보실 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

198강 (){onTap(e);}의 이해 돕기

0

30

1

video_call 플러그인 설치후 에러 발생

0

46

1

SDK 안드로이드 설치 질문!

0

60

1

코드팩토리 디스코드 링크 다시 부탁드려요~

0

92

1

Webview를 이용해서 URL 상의 페이지 출력 불가

0

70

1

홈스크린 함수를 함축해서 main.dart에 옮기는 문제

0

55

1

플레이스토어

0

59

1

아고라 엔진 init 함수의 반환타입이 Future<void> 이것의 의미는 무엇인가요?

0

55

1

가이드라인 질문

0

57

0

emulator 에러 환경설정 뭐가 문제 일까요??

0

77

1

emulator 실행 오류

0

93

3

Column을 가로방향 최대 사이즈를 차지하도록 하는 방법에 관련

0

71

1

setState()를 호출하지 않으면 build가 실행 안되는 건가요?

0

53

1

video_call 플러그인 설치시 에러문제

0

64

1

children 안의 if 문에서 { } 못쓰는 이유?

0

48

1

이렇게 오류가 떠요

0

64

1

AppBar 사용했는데

0

61

2

[문제해결] '오늘도 출첵!' 의 171번 강의에서 중요한 문제를 발견했습니다

0

56

1

StatefulWidget 실습 에러가 발생합니다.[해결완료]

0

63

1

Video Player 프로젝트에 대한 추가 질문

0

53

0

Row위젯이나 column위젯의 위치는 누가 정하나요??

0

42

1

geolocator 오류때문에 개발진행이 불가능입니다

0

63

1

API 관련 이슈

0

87

2

VoidCallback 뒤에 null 연산자 표기에 관한 질문

0

47

1