# Text URL: /react/components/typography/text Source: https://github.com/daangn/seed-design/blob/dev/docs/content/react/components/(foundation)/typography/text.mdx 텍스트를 표시하는 기본 타이포그래피 컴포넌트입니다. 일관된 글꼴 스타일과 크기를 적용하여 텍스트를 렌더링할 때 사용됩니다. ## Preview ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextPreview() { return ( t1Regular t2Regular t3Regular t4Regular t5Regular t6Bold t7Bold t8Bold t9Bold t10Bold t11Bold t12Bold t13Bold t14Bold ); } ``` ## Usage ```tsx import { Text } from "@seed-design/react"; ``` ```tsx ``` ## Props ## Examples ### Text Styles Figma의 Text Style과 대응되는 `textStyle` 속성을 사용하는 것이 기본 방법입니다. `textStyle`은 글꼴 크기, 줄 간격, 글꼴 굵기를 한 번에 설정합니다. ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextTextStyles() { return ( t1Regular t2Regular t3Regular t4Regular t5Regular t6Bold t7Bold t8Bold t9Bold t10Bold ); } ``` #### Font Sizes 더 구체적으로 변경이 필요한 경우 `fontSize` 및 `lineHeight` 속성을 각각 사용할 수 있습니다. `lineHeight` 속성은 `fontSize`에 대응되는 기본값으로 설정되며, `lineHeight` 속성으로 변경이 가능합니다. ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextFontSizes() { return ( t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 ); } ``` #### Font Weights 더 구체적으로 변경이 필요한 경우 `fontWeight` 속성을 사용할 수 있습니다. ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextFontWeights() { return ( regular medium bold ); } ``` ### Text Decoration Lines `textDecorationLine` 속성을 사용하여 텍스트에 밑줄 또는 취소선을 추가할 수 있습니다. - 링크가 아닌 텍스트를 강조하기 위해 밑줄을 적용할 때는 사용자 경험을 고려해야 합니다. 밑줄이 있는 텍스트는 링크로 인식될 수 있으므로, 혼동을 피하기 위해 적절한 상황에서만 사용해야 합니다. - 본문 밖 영역에서 인라인 텍스트를 링크 용도로 사용하고자 하는 경우 [ActionButton](/react/components/action-button)을 `variant="ghost" bleedX="asPadding" bleedY="asPadding"` 옵션으로 사용하는 것을 고려해보세요. ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextTextDecorationLines() { return ( underline line-through ); } ``` ### Max Lines `maxLines` 속성을 사용하여 텍스트가 차지하는 최대 줄 수를 제한할 수 있습니다. 지정된 줄 수를 초과하는 텍스트는 생략 부호(ellipsis) `…` 로 표시됩니다. ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextMaxLines() { return ( maxLines=1 Aliquip pariatur adipisicing elit consectetur velit commodo Lorem nulla eu. Occaecat sint voluptate ut dolore eiusmod minim qui reprehenderit. Do aliquip tempor ipsum aliqua enim. Incididunt irure do ullamco esse sit enim mollit nisi anim laboris do. Ut fugiat aliquip velit eiusmod ad incididunt. Consequat qui quis in ad culpa officia eu in Lorem. Elit voluptate est veniam aliqua magna Lorem proident incididunt amet aliquip. Aliquip sint sit ex eiusmod sint. Eiusmod incididunt consequat fugiat. maxLines=2 Aliquip pariatur adipisicing elit consectetur velit commodo Lorem nulla eu. Occaecat sint voluptate ut dolore eiusmod minim qui reprehenderit. Do aliquip tempor ipsum aliqua enim. Incididunt irure do ullamco esse sit enim mollit nisi anim laboris do. Ut fugiat aliquip velit eiusmod ad incididunt. Consequat qui quis in ad culpa officia eu in Lorem. Elit voluptate est veniam aliqua magna Lorem proident incididunt amet aliquip. Aliquip sint sit ex eiusmod sint. Eiusmod incididunt consequat fugiat. maxLines=3 Aliquip pariatur adipisicing elit consectetur velit commodo Lorem nulla eu. Occaecat sint voluptate ut dolore eiusmod minim qui reprehenderit. Do aliquip tempor ipsum aliqua enim. Incididunt irure do ullamco esse sit enim mollit nisi anim laboris do. Ut fugiat aliquip velit eiusmod ad incididunt. Consequat qui quis in ad culpa officia eu in Lorem. Elit voluptate est veniam aliqua magna Lorem proident incididunt amet aliquip. Aliquip sint sit ex eiusmod sint. Eiusmod incididunt consequat fugiat. ); } ``` ### User Select `userSelect` 속성을 사용하여 사용자가 텍스트를 선택할 수 있는지 여부를 제어할 수 있습니다. ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextUserSelect() { return ( auto none text ); } ``` ### Static 폰트 스케일링에 반응하지 않는 static 토큰을 활용하는 텍스트 스타일을 적용할 수 있습니다. ```tsx import { Flex, Text } from "@seed-design/react"; export default function TextStatic() { return ( t1StaticRegular t2StaticRegular t3StaticRegular t4StaticRegular t5StaticRegular t6StaticBold t7StaticBold t8StaticBold t9StaticBold t10StaticBold ); } ``` ### White Space `whiteSpace` prop은 `maxLines` prop을 사용하지 않을 때만 적용됩니다. ```tsx import { Box, Text, VStack } from "@seed-design/react"; const sampleText = `이것은 여러 개 의 공백, 줄바꿈과 들여쓰기를 포함한 샘플 텍스트입니다. 각각의 white-space 속성\n값이 어떻게 작동하는지 보여줍니다.`; export default function TextWhiteSpace() { return ( {(["normal", "nowrap", "pre", "pre-wrap", "pre-line", "break-spaces"] as const).map( (value) => ( {value} {sampleText} ), )} ); } ```