본문 바로가기
코딩/C#

[Unity] TMP 리치 텍스트(마크업 포맷, 태그) 사용법

by 남대현 2024. 9. 11.
반응형

리치 텍스트(Rich Text)

UI 요소와 텍스트 메시의 텍스트에는 여러 폰트 스타일 및 크기가 사용될 수 있습니다. Text, GUIStyle 및 TextMesh 클래스에는 Unity가 텍스트 안에서 마크업 태그를 찾도록 설정하는 Rich Text 설정이 있습니다. 태그는 눈으로 볼 수 있게 표시되지는 않지만, 텍스트에 적용할 스타일 변경을 나타냅니다.

 

마크업 포맷

HTML에서 힌트를 얻어 만들어진 마크업 시스템의 기본은 텍스트의 일부분을 서로 매치되는 태그 쌍 안에 넣어 원하는 시각 효과를 부여할 수 있다는 것입니다. 

기본 태그 예시)

종류 태그 예시 예시 결과
굵게 <b></b> 우리는 즐겁지 <b>않다</b>. 우리는 즐겁지 않다.
기울임꼴 <i></i> 우리는 <i>보통</i> 즐겁지 않다. 우리는 보통 즐겁지 않다.
크기 <size=크기></size> 우리는 <size=50>거의</size> 영향을 안 받는다. (블로그에서 지원 안됨.)
"거의"의 폰트 사이즈만 50이 된다.
글자색 <color=헥사코드></color> 우리는 <color=#ff0000ff>여러모로</color> 즐겁다 우리는 여러모로 즐겁다
  <color=색></color> 우리는 <color=red>여러모로 즐겁다</color> 우리는 여러모로 즐겁다
머티리얼 <material=2></material> 우리는 <material=2>구조적으로</material> 즐겁다 (블로그에서 지원 안됨.)
"구조적으로"의 머티리얼이 변경되어 렌더링된다.


이러한 효과들로 텍스트 중간에 내가 원하는 특정 글자만 색을 변경하거나, 크기를 변경하는 등의 행동을 할 수 있습니다.

만약, 중첩하여 적용시키고 싶은 경우 태그를 중첩하여 적용하여 원하는 결과를 가져올 수 있습니다.
예시) "우리는 <b><i>전혀</i></b> 즐겁지 않다" -> "우리는 전혀 즐겁지 않다"

중첩 태그를 혼용하는 형식의 중첩도 가능합니다.
예시)"우리는 <b>진짜 <i>하나도</i></b> 즐겁지 않다" -> "우리는 진짜 하나도 즐겁지 않다"

 

참고 링크

https://docs.unity3d.com/kr/2020.3/Manual/StyledText.html

https://everyday-devup.tistory.com/41

반응형

댓글