Text QML Type

장면에 서식이 지정된 텍스트를 추가하는 방법을 지정합니다. 더 보기...

Import Statement: import QtQuick
Inherits:

Item

속성

신호

방법

자세한 설명

텍스트 항목은 일반 텍스트와 서식 있는 텍스트를 모두 표시할 수 있습니다. 예를 들어 다음과 같이 특정 글꼴과 크기를 사용하여 빨간색 텍스트를 정의할 수 있습니다:

Text {
    text: "Hello World!"
    font.family: "Helvetica"
    font.pointSize: 24
    color: "red"
}

HTML 스타일 마크업 또는 마크다운을 사용하여 서식 있는 텍스트를 정의합니다:

Text {
    text: "<b>Hello</b> <i>World!</i>"
}
Text {
    text: "**Hello** *World!*"
}

높이와 너비가 명시적으로 설정되지 않은 경우 Text는 필요한 공간을 판단하여 그에 맞게 설정합니다. wrapMode 을 설정하지 않으면 항상 높이보다 너비를 선호합니다(모든 텍스트가 한 줄에 배치됨).

한 줄의 일반 텍스트를 설정된 너비에 맞추려면 elide 속성을 사용하면 됩니다.

지원되는 HTML 하위 집합은 제한되어 있습니다. 또한 텍스트에 원격 이미지를 로드하는 HTML 이미지 태그가 포함되어 있으면 텍스트가 다시 로드됩니다.

텍스트는 읽기 전용 텍스트를 제공합니다. 편집 가능한 텍스트는 TextEdit 을 참조하세요.

글꼴 예시도참조하세요 .

속성 문서

effectiveHorizontalAlignment : enumeration [read-only]

horizontalAlignment : enumeration

verticalAlignment : enumeration

텍스트 항목 너비와 높이 내에서 텍스트의 가로 및 세로 맞춤을 설정합니다. 기본적으로 텍스트는 상단에 세로로 정렬됩니다. 가로 맞춤은 텍스트의 자연스러운 정렬을 따릅니다(예: 왼쪽에서 오른쪽으로 읽는 텍스트는 왼쪽으로 정렬됨).

horizontalAlignment 의 유효한 값은 Text.AlignLeft, Text.AlignRight, Text.AlignHCenterText.AlignJustify 입니다. verticalAlignment 의 유효한 값은 Text.AlignTop, Text.AlignBottomText.AlignVCenter 입니다.

한 줄의 텍스트의 경우 텍스트의 크기는 텍스트의 영역입니다. 이 일반적인 경우 모든 정렬은 동일합니다. 예를 들어 텍스트가 부모에서 중앙에 위치하도록 하려면 Item::anchors 을 수정하거나 horizontalAlignment 을 Text.AlignHCenter로 설정하고 너비를 부모의 너비에 바인딩해야 합니다.

첨부된 속성 LayoutMirroring::enabled 을 사용하여 애플리케이션 레이아웃을 미러링하는 경우 텍스트의 가로 정렬도 미러링됩니다. 그러나 horizontalAlignment 속성은 변경되지 않습니다. 텍스트의 효과적인 가로 맞춤을 쿼리하려면 읽기 전용 속성 effectiveHorizontalAlignment 을 사용합니다.


bottomPadding : real

leftPadding : real

padding : real

rightPadding : real

topPadding : real

이러한 속성은 콘텐츠 주위에 패딩을 유지합니다. 이 공간은 contentWidthcontentHeight 과 함께 예약되어 있습니다.


advance : size [read-only]

텍스트 항목의 첫 번째 문자의 기준 원점에서 텍스트 흐름에서 이 문자의 바로 뒤에 오는 텍스트 항목의 첫 번째 문자의 기준 원점까지의 거리(픽셀 단위)입니다.

텍스트가 오른쪽에서 왼쪽으로 흐르는 경우 전진값은 음수가 될 수 있습니다.


antialiasing : bool

텍스트에 앤티앨리어싱을 사용할지 여부를 결정하는 데 사용됩니다. Text.NativeRendering이 renderType 인 텍스트만 앤티앨리어싱을 비활성화할 수 있습니다.

기본값은 true 입니다.


baseUrl : url

이 속성은 텍스트 내의 상대 URL을 확인하는 데 사용되는 기본 URL을 지정합니다.

URL은 기본 URL의 대상과 동일한 디렉토리 내에 있는 것으로 확인되므로 마지막 '/' 이후의 경로 부분은 무시됩니다.

기본 URL상대 URL확인된 URL
http://qt-project.org/images/logo.pnghttp://qt-project.org/images/logo.png
http://qt-project.org/index.htmlimages/logo.pnghttp://qt-project.org/images/logo.png
http://qt-project.org/contentimages/logo.pnghttp://qt-project.org/content/images/logo.png
http://qt-project.org/content/images/logo.pnghttp://qt-project.org/content/images/logo.png
http://qt-project.org/content/index.htmlimages/logo.pnghttp://qt-project.org/content/images/logo.png
http://qt-project.org/content/index.html../images/logo.pnghttp://qt-project.org/images/logo.png
http://qt-project.org/content/index.html/이미지/로고.pnghttp://qt-project.org/images/logo.png

기본값은 텍스트 항목을 인스턴스화하는 QML 파일의 URL입니다.


clip : bool

이 속성은 텍스트의 잘림 여부를 유지합니다.

텍스트가 경계 사각형에 맞지 않으면 텍스트가 갑자기 잘립니다.

제한된 공간에 긴 텍스트를 표시하려면 elide 대신 를 사용하는 것이 좋습니다.


color : color

텍스트 색상.

16진수 표기법을 사용하여 정의된 녹색 텍스트의 예입니다:

Text {
    color: "#00FF00"
    text: "green text"
}

SVG 색상 이름을 사용하여 정의된 강철색 텍스트의 예입니다:

Text {
    color: "steelblue"
    text: "blue text"
}

contentHeight : real [read-only]

설정된 높이보다 텍스트가 많아서 가려지는 높이를 포함하여 텍스트의 높이를 반환합니다.


contentWidth : real [read-only]

WrapMode가 설정된 경우 줄 바꿈이 충분하지 않아 가려진 너비를 포함하여 텍스트의 너비를 반환합니다.


elide : enumeration

텍스트 항목의 너비에 맞는 텍스트의 일부를 생략하려면 이 속성을 설정합니다. 명시적인 너비가 설정된 경우에만 텍스트가 생략됩니다.

이 속성은 서식 있는 텍스트와 함께 사용할 수 없습니다.

엘리딩은 가능합니다:

상수설명
Text.ElideNone- 기본값
Text.ElideLeft
Text.ElideMiddle
Text.ElideRight

이 속성이 Text.ElideRight로 설정된 경우 wrapped 텍스트와 함께 사용할 수 있습니다. maximumLineCount 또는 height 이 설정된 경우에만 텍스트가 생략됩니다. maximumLineCountheight 이 모두 설정된 경우 줄이 허용된 높이에 맞지 않는 한 maximumLineCount 이 적용됩니다.

텍스트가 여러 길이의 문자열이고 모드가 Text.ElideNone 이 아닌 경우 가장 먼저 맞는 문자열이 사용되며, 그렇지 않으면 마지막 문자열이 생략됩니다.

다중 길이 문자열은 유니코드 "문자열 터미네이터" 문자 U009C ( "\u009C" 또는 "\x9C")로 구분하여 가장 긴 문자열부터 가장 짧은 문자열 순으로 정렬됩니다.


font.bold : bool

글꼴 굵기 여부를 설정합니다.


font.capitalization : enumeration

텍스트의 대문자를 설정합니다.

Constant설명
Font.MixedCase일반 경우: 대문자 변경이 적용되지 않습니다.
Font.AllUppercase텍스트가 모든 대문자로 렌더링되도록 변경합니다.
Font.AllLowercase텍스트가 모든 소문자로 렌더링되도록 변경합니다.
Font.SmallCaps텍스트를 소문자 타입으로 렌더링하도록 변경합니다.
Font.Capitalize각 단어의 첫 글자를 대문자로 렌더링할 텍스트를 변경합니다.
Text { text: "Hello"; font.capitalization: Font.AllLowercase }

font.contextFontMerging : bool [since 6.8]

선택한 글꼴에 특정 문자가 포함되어 있지 않으면 Qt는 해당 문자가 포함된 비슷한 모양의 대체 글꼴을 자동으로 선택합니다. 기본적으로 이 작업은 문자 단위로 수행됩니다.

즉, 흔하지 않은 특정 경우에는 동일한 스크립트에 있더라도 하나의 텍스트 문자열을 표현하기 위해 여러 가지 글꼴이 사용될 수 있습니다. contextFontMerging 을 true로 설정하면 입력 문자열의 가장 큰 하위 집합과 일치하는 대체 글꼴을 대신 찾습니다. 이 경우 누락된 글리프가 있는 문자열의 경우 비용이 더 많이 들지만 보다 일관된 결과를 얻을 수 있습니다. 기본적으로 contextFontMergingfalse 입니다.

이 프로퍼티는 Qt 6.8에 도입되었습니다.

QFont::StyleStrategy참조하십시오 .


font.family : string

글꼴의 패밀리 이름을 설정합니다.

패밀리 이름은 대소문자를 구분하지 않으며 선택적으로 파운드리 이름(예: "Helvetica [Cronyx]")을 포함할 수 있습니다. 두 개 이상의 파운드리에서 제품군을 사용할 수 있고 파운드리가 지정되지 않은 경우 임의의 파운드리가 선택됩니다. 해당 서체를 사용할 수 없는 경우 글꼴 일치 알고리즘을 사용하여 서체를 설정합니다.


font.features : object [since 6.6]

features 의 내용을 기반으로 텍스트 모양을 만들 때 특정 OpenType 기능에 정수 값을 적용합니다. 이를 통해 글꼴 성형 프로세스에 대한 고급 액세스를 제공하며, API에서 다루지 않는 글꼴 기능을 지원하는 데 사용할 수 있습니다.

글꼴 기능은 4글자 태그에서 정수 값으로의 맵으로 표현됩니다. 대부분의 경우 태그와 함께 전달되는 이 정수 값은 부울 값을 나타냅니다: 0 값은 해당 기능이 비활성화되어 있음을 의미하고, 0이 아닌 값은 활성화되어 있음을 의미합니다. 그러나 특정 글꼴 기능의 경우 다른 해석이 있을 수 있습니다. 예를 들어 salt 기능에 적용된 경우 이 값은 사용할 스타일 대체를 지정하는 인덱스입니다.

예를 들어 frac 글꼴 기능은 슬래시로 구분된 대각선 분수(예: 1/2)를 다른 표현으로 변환합니다. 일반적으로 전체 분수를 단일 문자 너비(예: ½)로 굽는 작업이 포함됩니다.

글꼴이 frac 기능을 지원하는 경우 다음 코드와 같이 셰이퍼에서 해당 기능을 활성화할 수 있습니다:

Text {
    text: "One divided by two is 1/2"
    font.family: "MyFractionFont"
    font.features: { "frac": 1 }
}

동일한 매핑에서 여러 기능에 값을 할당할 수 있습니다. 예를 들어 글꼴에 대한 커닝도 비활성화하려는 경우 다음과 같이 명시적으로 비활성화할 수 있습니다:

Text {
    text: "One divided by two is 1/2"
    font.family: "MyFractionFont"
    font.features: { "frac": 1, "kern": 0 }
}

객체에서 폰트 속성을 수집할 수도 있습니다:

Text {
    text: "One divided by two is 1/2"
    font: {
        family: "MyFractionFont"
        features: { "frac": 1, "kern": 0 }
    }
}

참고: 기본적으로 Qt는 다른 폰트 속성에 따라 특정 폰트 기능을 활성화 및 비활성화합니다. 특히 kern 기능은 QFontfont.kerning 속성에 따라 활성화/비활성화됩니다. 또한 font.letterSpacing 이 설정된 경우 모든 합자 기능(liga, clig, dlig, hlig)이 비활성화되지만, 이는 합자를 사용하는 것이 외관상인 쓰기 시스템에 대해서만 해당됩니다. 합자가 필요한 쓰기 시스템의 경우 기능은 기본 상태로 유지됩니다. font.features 을 사용하여 설정한 값은 기본 동작을 재정의합니다. 예를 들어 "kern" 을 1로 설정하면 font.kerning 속성이 false로 설정되었는지 여부에 관계없이 커닝이 항상 활성화됩니다. 마찬가지로 0 로 설정된 경우 항상 비활성화됩니다.

이 프로퍼티는 Qt 6.6에 도입되었습니다.

QFont::setFeature()도 참조하세요 .


font.hintingPreference : enumeration

텍스트에 대한 기본 힌트를 설정합니다. 이는 특정 수준의 힌트를 사용하도록 기본 텍스트 렌더링 시스템에 대한 힌트이며, 플랫폼에 따라 지원 여부가 다릅니다. 자세한 내용은 QFont::HintingPreference 설명서의 표를 참조하세요.

참고: 이 프로퍼티는 렌더 유형 Text.NativeRendering과 함께 사용할 때만 효과가 있습니다.

Constant설명
Font.PreferDefaultHinting대상 플랫폼의 기본 힌트 수준을 사용합니다.
Font.PreferNoHinting가능하면 글리프의 윤곽선을 힌트하지 않고 텍스트를 렌더링합니다. 텍스트 레이아웃은 예를 들어 인쇄할 때 사용되는 것과 동일한 메트릭을 사용하여 인쇄상의 정확성을 유지합니다.
Font.PreferVerticalHinting가능하면 가로 힌트 없이 텍스트를 렌더링하되 글리프를 세로 방향의 픽셀 그리드에 정렬합니다. 밀도가 너무 낮아 글리프가 정확하게 렌더링되지 않는 디스플레이에서는 텍스트가 더 선명하게 표시됩니다. 그러나 글리프의 가로 메트릭은 힌트가 없으므로 줄 바꿈과 같은 세부 사항에 영향을 주지 않고 텍스트의 레이아웃을 더 높은 밀도의 장치(예: 프린터)로 확장할 수 있습니다.
Font.PreferFullHinting가능하면 가로 및 세로 방향 모두에 힌트가 있는 텍스트를 렌더링하세요. 대상 디바이스에서 가독성을 최적화하기 위해 텍스트가 변경되지만, 텍스트의 대상 크기에 따라 지표가 달라지므로 글리프, 줄 바꿈 및 기타 타이포그래피 디테일의 위치가 조정되지 않으므로 픽셀 밀도가 다른 디바이스에서 텍스트 레이아웃이 다르게 보일 수 있습니다.
Text { text: "Hello"; renderType: Text.NativeRendering; font.hintingPreference: Font.PreferVerticalHinting }

font.italic : bool

글꼴에 이탤릭체 스타일을 사용할지 여부를 설정합니다.


font.kerning : bool

텍스트 모양을 만들 때 커닝 OpenType 기능을 활성화 또는 비활성화합니다. 이 기능을 비활성화하면 텍스트를 만들거나 변경할 때 성능이 향상될 수 있지만 일부 외형적 기능이 희생될 수 있습니다. 기본값은 true입니다.

Text { text: "OATS FLAVOUR WAY"; font.kerning: false }

font.letterSpacing : real

글꼴의 문자 간격을 설정합니다.

문자 간격은 글꼴의 개별 문자 사이의 기본 간격을 변경합니다. 양수 값은 해당 픽셀만큼 글자 간격을 늘리고 음수 값은 글자 간격을 줄입니다.


font.pixelSize : int

글꼴 크기를 픽셀 단위로 설정합니다.

이 기능을 사용하면 글꼴 장치가 종속됩니다. 글꼴 크기를 기기와 독립적으로 설정하려면 pointSize 을 사용하세요.


font.pointSize : real

글꼴 크기를 포인트 단위로 설정합니다. 포인트 크기는 0보다 커야 합니다.


font.preferShaping : bool

글꼴은 문자를 올바르게 표시하기 위해 문자 집합에 복잡한 규칙을 적용하는 경우가 있습니다. 브라만 문자와 같은 일부 문자 체계에서는 텍스트를 읽기 위해 이러한 규칙이 필요하지만 라틴 문자와 같은 문자 체계에서는 단지 외형적인 기능일 뿐입니다. preferShaping 속성을 false로 설정하면 필요하지 않은 경우 이러한 기능이 모두 비활성화되므로 대부분의 경우 성능이 향상됩니다.

기본값은 참입니다.

Text { text: "Some text"; font.preferShaping: false }

font.preferTypoLineMetrics : bool [since 6.8]

글꼴의 ascent, descentleading 을 제공하는 수직선 메트릭의 경쟁 세트. 이러한 메트릭은 종종 승리 (Windows) 메트릭과 오타 (오타) 메트릭이라고도 합니다. 사양에서는 줄 간격에 typo 메트릭을 사용할 것을 권장하지만, 글꼴의 fsSelection 필드에 USE_TYPO_METRICS 플래그가 설정되어 있지 않은 한 많은 애플리케이션에서 win 메트릭을 선호합니다. 이는 이전 버전과의 호환성을 위해 Qt 애플리케이션에서도 마찬가지입니다. typo 메트릭이 유효함을 나타내기 위해 USE_TYPO_METRICS 플래그를 설정한 글꼴이나 win 메트릭과 typo 메트릭이 일치하는 글꼴의 경우에는 문제가 되지 않습니다. 그러나 특정 글꼴의 경우 win 메트릭이 바람직한 줄 간격보다 클 수 있으며 실수로 USE_TYPO_METRICS 플래그가 설정되지 않을 수 있습니다. 이러한 글꼴의 경우 font.preferTypoLineMetrics 을 설정하면 더 나은 결과를 얻을 수 있습니다.

기본적으로 preferTypoLineMetricsfalse 입니다.

이 속성은 Qt 6.8에 도입되었습니다.

QFont::StyleStrategy참조하십시오 .


font.strikeout : bool

글꼴에 취소 스타일이 있는지 여부를 설정합니다.


font.styleName : string

글꼴의 스타일 이름을 설정합니다.

스타일 이름은 대소문자를 구분하지 않습니다. 설정하면 글꼴은 글꼴 속성 font.weight, font.boldfont.italic 대신 스타일 이름과 일치합니다.


font.underline : bool

텍스트에 밑줄을 긋는지 여부를 설정합니다.


font.variableAxes : object [since 6.7]

가변 글꼴의 가변 축에 부동 소수점 값을 적용합니다.

가변 글꼴은 동일한 글꼴 파일에 가중치, 너비 또는 스타일이 다른 여러 변형을 저장할 수 있는 방법을 제공합니다. 변형은 "가변 축"이라고 하는 사전 정의된 매개변수 집합에 대한 부동 소수점 값으로 제공됩니다. 특정 인스턴스는 일반적으로 폰트 디자이너가 이름을 지정하며, Qt에서는 기존의 서브 패밀리와 마찬가지로 setStyleName()을 사용하여 선택할 수 있습니다.

경우에 따라 다른 축에 임의의 값을 제공하는 것도 유용합니다. 예를 들어 글꼴에 일반 및 굵게 하위 패밀리가 있는 경우 이 사이에 가중치를 지정하고 싶을 수 있습니다. 그런 다음 글꼴의 "wght" 축에 사용자 지정 값을 제공하여 이를 수동으로 요청할 수 있습니다.

Text {
    text: "Foobar"
    font.family: "MyVariableFont"
    font.variableAxes: { "wght": (Font.Normal + Font.Bold) / 2.0 }
}

글꼴에서 "wght" 축이 지원되고 지정된 값이 정의된 범위 내에 있으면 가중치 550.0에 해당하는 글꼴이 제공됩니다.

많은 글꼴이 제공하는 표준 축은 "wght"(무게), "wdth"(너비), "ital"(이탤릭체), "opsz"(광학 크기) 등 몇 가지가 있습니다. 이러한 글꼴에는 각각 글꼴 자체에 정의된 개별 범위가 있습니다. 예를 들어 'wght'는 100~900(QFont::Thin ~ QFont::Black) 범위인 반면 'ital'은 0~1(이탤릭체 없음에서 완전 이탤릭체까지) 범위일 수 있습니다.

글꼴은 사용자 정의 축을 정의하도록 선택할 수도 있습니다. 유일한 제한은 이름이 QFont::Tag (라틴 1 문자 4개로 구성된 시퀀스)의 요구 사항을 충족해야 한다는 것입니다.

기본적으로 가변 축은 설정되어 있지 않습니다.

참고: Windows에서 선택적 GDI 글꼴 백엔드를 사용 중인 경우 가변 축이 지원되지 않습니다.

이 속성은 Qt 6.7에 도입되었습니다.

QFont::setVariableAxis()도 참조하세요 .


font.weight : int

글꼴의 요청된 가중치입니다. 요청된 가중치는 1에서 1000 사이의 정수이거나 미리 정의된 값 중 하나여야 합니다:

상수설명
Font.Thin100
Font.ExtraLight200
Font.Light300
Font.Normal400(기본값)
Font.Medium500
Font.DemiBold600
Font.Bold700
Font.ExtraBold800
Font.Black900
Text { text: "Hello"; font.weight: Font.DemiBold }

font.wordSpacing : real

글꼴의 단어 간격을 설정합니다.

단어 간격은 개별 단어 사이의 기본 간격을 변경합니다. 양수 값은 해당 픽셀만큼 단어 간격을 늘리고 음수 값은 그에 따라 단어 간 간격을 줄입니다.


fontInfo.bold : bool [read-only]

현재 글꼴 및 fontSizeMode 에 대해 해결된 글꼴 정보의 굵게 상태입니다. 확인된 글꼴의 굵기가 굵게 이상인 경우에 해당합니다.


fontInfo.family : string [read-only]

현재 글꼴에 대해 확인된 글꼴의 패밀리 이름 및 fontSizeMode.


fontInfo.italic : bool [read-only]

현재 글꼴 및 fontSizeMode 에 대해 확인된 글꼴 정보의 이탤릭체 상태입니다.


fontInfo.pixelSize : int [read-only]

현재 글꼴 및 fontSizeMode 에 대해 확인된 글꼴 정보의 픽셀 크기입니다.


fontInfo.pointSize : real [read-only]

현재 글꼴 및 fontSizeMode 에 대해 확인된 글꼴 정보의 포인트 크기입니다.


fontInfo.styleName : string [read-only]

현재 글꼴에 대해 확인된 글꼴 정보의 스타일 이름과 fontSizeMode.


fontInfo.weight : int [read-only]

현재 글꼴 및 fontSizeMode.


fontSizeMode : enumeration

이 속성은 표시되는 텍스트의 글꼴 크기를 결정하는 방법을 지정합니다. 가능한 값은 다음과 같습니다:

Constant설명
Text.FixedSize(기본값) font.pixelSize 또는 font.pointSize 에 지정된 크기가 사용됩니다.
Text.HorizontalFit줄 바꿈 없이 항목 너비에 맞는 지정된 크기까지 가장 큰 크기가 사용됩니다.
Text.VerticalFit항목의 높이에 맞는 지정된 크기까지 가장 큰 크기가 사용됩니다.
Text.Fit항목의 너비와 높이에 맞는 지정된 크기까지 가장 큰 크기가 사용됩니다.

맞춤 텍스트의 글꼴 크기에는 minimumPointSize 또는 minimumPixelSize 속성으로 지정된 최소값과 font.pointSize 또는 font.pixelSize 속성으로 지정된 최대값이 있습니다.

Text { text: "Hello"; fontSizeMode: Text.Fit; minimumPixelSize: 10; font.pixelSize: 72 }

텍스트가 최소 글꼴 크기로 항목 경계에 맞지 않으면 elide 속성에 따라 텍스트가 제거됩니다.

textFormat 속성이 Text.RichText 으로 설정된 경우 속성이 완전히 무시되므로 전혀 영향을 미치지 않습니다. textFormatText.StyledText 로 설정된 경우 텍스트 안에 글꼴 크기 태그가 없는 경우 해당 속성이 존중됩니다. 글꼴 크기 태그가 있는 경우에도 프로퍼티는 해당 태그를 존중합니다. 이로 인해 fontSizeMode 설정을 완전히 준수하지 않을 수 있습니다.


이 속성에는 사용자가 텍스트에 포함된 링크를 마우스로 가리킬 때 링크 문자열이 포함됩니다. 링크는 서식 있는 텍스트 또는 HTML 형식이어야 하며 hoveredLink 문자열은 특정 링크에 대한 액세스를 제공합니다.

linkHoveredlinkAt()도 참조하세요 .


lineCount : int [read-only]

텍스트 항목에 표시되는 줄 수를 반환합니다.

이 속성은 서식 있는 텍스트에는 지원되지 않습니다.

maximumLineCount참조하세요 .


lineHeight : real

텍스트의 줄 높이를 설정합니다. 값은 픽셀 단위 또는 lineHeightMode 에 따라 배수로 지정할 수 있습니다.

기본값은 1.0의 배수입니다. 줄 높이는 양수 값이어야 합니다.


lineHeightMode : enumeration

이 속성에 따라 줄 높이가 지정되는 방식이 결정됩니다. 가능한 값은 다음과 같습니다:

상수설명
Text.ProportionalHeight(기본값)은 줄에 비례하는 간격을 설정합니다(승수로). 예를 들어 이중 간격의 경우 2로 설정합니다.
Text.FixedHeight줄 높이를 고정된 줄 높이(픽셀 단위)로 설정합니다.

linkColor : color

텍스트의 링크 색상입니다.

이 속성은 스타일 텍스트 textFormat 와 함께 작동하지만 리치 텍스트에는 작동하지 않습니다. 리치 텍스트의 링크 색상은 텍스트에 CSS 스타일 태그를 포함하여 지정할 수 있습니다.


maximumLineCount : int

이 속성을 설정하면 텍스트 항목에 표시되는 줄 수를 제한할 수 있습니다. elide가 Text.ElideRight로 설정되어 있으면 텍스트가 적절하게 줄 바꿈됩니다. 기본적으로 이 값은 가능한 가장 큰 정수 값입니다.

서식 있는 텍스트에는 이 속성이 지원되지 않습니다.

lineCountelide참조하세요 .


minimumPixelSize : int

이 속성은 fontSizeMode 속성에 의해 크기가 조정되는 텍스트의 최소 글꼴 픽셀 크기를 지정합니다.

fontSizeMode 가 Text.FixedSize이거나 font.pixelSize 가 -1이면 이 속성은 무시됩니다.


minimumPointSize : int

이 속성은 fontSizeMode 속성에 의해 배율이 조정된 텍스트의 최소 글꼴 포인트 size 를 지정합니다.

fontSizeMode 이 Text.FixedSize이거나 font.pointSize 이 -1이면 이 속성은 무시됩니다.


renderType : enumeration

이 컴포넌트의 기본 렌더링 유형을 재정의합니다.

지원되는 렌더링 유형은 다음과 같습니다:

Constant설명
Text.QtRendering텍스트는 각 글리프에 대해 확장 가능한 거리 필드를 사용하여 렌더링됩니다.
Text.NativeRendering텍스트는 플랫폼별 기술을 사용하여 렌더링됩니다.
Text.CurveRendering그래픽 하드웨어에서 직접 실행되는 커브 래스터라이저를 사용하여 텍스트가 렌더링됩니다. (Qt 6.7.0에 도입되었습니다.)

텍스트가 대상 플랫폼에서 네이티브처럼 보이도록 하고 텍스트 변형과 같은 고급 기능이 필요하지 않은 경우 Text.NativeRendering 을 선택합니다. 이러한 기능을 네이티브 렌더링 렌더링 유형과 함께 사용하면 결과가 좋지 않고 때로는 픽셀화될 수 있습니다.

Text.QtRenderingText.CurveRendering 는 모두 하드웨어 가속 기술입니다. QtRendering 는 둘 중 더 빠르지만 메모리를 더 많이 사용하며 큰 크기에서는 렌더링 아티팩트가 나타납니다. CurveRenderingQtRendering 가 좋은 시각적 결과를 제공하지 않거나 그래픽 메모리 소비를 줄이는 것이 우선인 경우 대안으로 고려해야 합니다.

기본 렌더링 유형은 QQuickWindow::textRenderType()에 의해 결정됩니다.


renderTypeQuality : int [since 6.0]

이 컴포넌트의 기본 렌더링 유형 품질을 재정의합니다. 이것은 대부분의 경우 무시할 수 있는 낮은 수준의 사용자 정의입니다. 현재 renderTypeText.QtRendering 일 때만 영향을 미칩니다.

Text.QtRendering에서 사용하는 래스터화 알고리즘은 큰 텍스트 크기에서 날카로운 모서리가 실제보다 둥글게 보이는 것과 같은 아티팩트를 생성할 수 있습니다. 특정 텍스트 항목에서 이 문제가 발생하는 경우 renderTypeQuality 을 늘려 메모리 사용량을 희생하더라도 렌더링 품질을 개선할 수 있습니다.

renderTypeQuality 은 0보다 큰 정수이거나 다음 사전 정의된 값 중 하나일 수 있습니다.

상수설명
Text.DefaultRenderTypeQuality-1(기본값)
Text.LowRenderTypeQuality26
Text.NormalRenderTypeQuality52
Text.HighRenderTypeQuality104
Text.VeryHighRenderTypeQuality208

이 속성은 Qt 6.0에 도입되었습니다.


style : enumeration

추가 텍스트 스타일을 설정합니다.

지원되는 텍스트 스타일은 다음과 같습니다:

ConstantDescription
Text.Normal- 기본값
Text.Outline
Text.Raised
Text.Sunken
Row {
    Text { font.pointSize: 24; text: "Normal" }
    Text { font.pointSize: 24; text: "Raised"; style: Text.Raised; styleColor: "#AAAAAA" }
    Text { font.pointSize: 24; text: "Outline";style: Text.Outline; styleColor: "red" }
    Text { font.pointSize: 24; text: "Sunken"; style: Text.Sunken; styleColor: "#AAAAAA" }
}


styleColor : color

텍스트 스타일에 사용되는 보조 색상을 정의합니다.

styleColor 윤곽선이 있는 텍스트의 경우 윤곽선 색상으로, 돋움 또는 움푹 들어간 텍스트의 경우 그림자 색상으로 사용됩니다. 스타일을 설정하지 않으면 전혀 사용되지 않습니다.

Text { font.pointSize: 18; text: "hello"; style: Text.Raised; styleColor: "gray" }

style참조하세요 .


text : string

표시할 텍스트입니다. 텍스트는 일반 텍스트 문자열과 서식 있는 텍스트 문자열을 모두 지원합니다.

항목은 텍스트를 스타일이 지정된 텍스트로 처리할지 여부를 자동으로 결정하려고 시도합니다. 이 결정은 Qt::mightBeRichText()를 사용하여 이루어집니다. 그러나 마크다운 감지는 자동으로 이루어지지 않습니다.

textFormat참조하세요 .


textFormat : enumeration

text 속성이 표시되는 방식.

지원되는 텍스트 형식은 다음과 같습니다:

상수설명
Text.AutoText(기본값) Qt::mightBeRichText() 휴리스틱을 통해 감지됨
Text.PlainText모든 스타일링 태그는 일반 텍스트로 처리됨
Text.StyledTextHTML 3.2에서와 같이 최적화된 기본 서식 있는 텍스트
Text.RichTextHTML 4의 하위 집합
Text.MarkdownText표 및 작업 목록에 대한CommonMark와 GitHub 확장(5.14 이후)

텍스트 형식이 Text.AutoText 인 경우 텍스트 항목은 텍스트를 스타일이 지정된 텍스트로 처리할지 여부를 자동으로 결정합니다. 이 결정은 텍스트의 첫 줄에 HTML 태그가 있는지 감지할 수 있지만 마크다운과 일반 텍스트를 구분할 수 없는 Qt::mightBeRichText()를 사용하여 이루어집니다.

Text.StyledText 는 HTML 3.2 스타일의 몇 가지 기본 텍스트 스타일링 마크업을 지원하는 최적화된 형식입니다:

<b></b> - bold
<del></del> - strike out (removed content)
<s></s> - strike out (no longer accurate or no longer relevant content)
<strong></strong> - bold
<i></i> - italic
<br> - new line
<p> - paragraph
<u> - underlined text
<font color="color_name" size="1-7"></font>
<h1> to <h6> - headers
<a href=""> - anchor
<img src="" align="top,middle,bottom" width="" height=""> - inline images
<ol type="">, <ul type=""> and <li> - ordered and unordered lists
<pre></pre> - preformatted
All entities

Text.StyledText 파서는 엄격하여 태그가 올바르게 중첩되어야 합니다.

Column {
    Text {
        font.pointSize: 24
        text: "<b>Hello</b> <i>World!</i>"
    }
    Text {
        font.pointSize: 24
        textFormat: Text.RichText
        text: "<b>Hello</b> <i>World!</i>"
    }
    Text {
        font.pointSize: 24
        textFormat: Text.PlainText
        text: "<b>Hello</b> <i>World!</i>"
    }
    Text {
        font.pointSize: 24
        textFormat: Text.MarkdownText
        text: "**Hello** *World!*"
    }
}

Text.RichText지원되는 HTML 하위 집합 페이지에 설명된 대로 더 큰 HTML 4 하위 집합을 지원합니다. 대신 Text.PlainText, Text.StyledText 또는 Text.MarkdownText 을 사용하는 것이 더 나은 성능을 제공합니다.

참고: Text.MarkdownText 와 지원되는 HTML 하위 집합을 사용하면 일부 장식 요소가 웹 브라우저에서와 같이 렌더링되지 않습니다:

  • 코드 블록은 default monospace font 을 사용하지만 주변 하이라이트 상자가 없습니다.
  • 블록 따옴표는 들여쓰기되지만 따옴표 옆에 세로줄이 없습니다.

truncated : bool [read-only]

maximumLineCount 또는 elide 으로 인해 텍스트가 잘린 경우 참을 반환합니다.

이 속성은 서식 있는 텍스트에는 지원되지 않습니다.

maximumLineCountelide참조하세요 .


wrapMode : enumeration

텍스트를 텍스트 항목의 너비로 줄 바꿈하려면 이 속성을 설정합니다. 명시적 너비가 설정된 경우에만 텍스트가 줄 바꿈됩니다. wrapMode는 다음 중 하나일 수 있습니다:

상수설명
Text.NoWrap(기본값): 줄 바꿈이 수행되지 않습니다. 텍스트에 개행이 충분하지 않으면 contentWidth 이 설정된 너비를 초과합니다.
Text.WordWrap단어 경계에서만 줄 바꿈이 수행됩니다. 단어가 너무 길면 contentWidth 이 설정된 너비를 초과합니다.
Text.WrapAnywhere줄 바꿈은 단어 중간에 발생하더라도 줄 바꿈은 줄의 어느 지점에서나 수행됩니다.
Text.Wrap가능하면 단어 경계에서 줄 바꿈이 발생하고, 그렇지 않으면 단어 중간에 있더라도 줄의 적절한 지점에서 줄 바꿈이 발생합니다.

신호 문서

lineLaidOut(object line)

이 신호는 일반 텍스트 또는 스타일이 지정된 텍스트 모드에서 레이아웃 프로세스 중에 배치되는 각 텍스트 줄에 대해 발생합니다. 서식 있는 텍스트 모드에서는 발생하지 않습니다. 지정된 line 객체는 현재 레이아웃 중인 줄에 대한 자세한 정보를 제공합니다.

이를 통해 레이아웃 중인 줄의 위치와 크기를 조정할 수 있습니다. 예를 들어 열을 만들거나 객체 주위에 텍스트를 배치하는 데 사용할 수 있습니다.

지정된 line 개체의 속성은 다음과 같습니다:

속성 이름설명
번호(읽기 전용)줄 번호, 0으로 시작합니다.
xText 요소 내에서 줄의 x 위치를 지정합니다.
yText 요소 내에서 줄의 y 위치를 지정합니다.
너비선의 너비를 지정합니다.
높이선의 높이를 지정합니다.
implicitWidth(읽기 전용)너비에 대한 수정 사항을 고려하지 않고 선의 내용에 따라 선이 자연스럽게 차지할 너비입니다.
isLast(읽기 전용)줄이 마지막 줄인지 여부입니다. 이 속성은 너비 속성을 다른 값으로 설정하면 변경될 수 있습니다.

예를 들어 텍스트 항목의 처음 5줄을 오른쪽으로 100픽셀 이동합니다:

onLineLaidOut: (line)=> {
    if (line.number < 5) {
        line.x = line.x + 100
        line.width = line.width - 100
    }
}

다음 예제를 사용하면 항목을 마지막 줄 끝에 배치할 수 있습니다:

onLineLaidOut: (line)=> {
    if (line.isLast) {
        lastLineMarker.x = line.x + line.implicitWidth
        lastLineMarker.y = line.y + (line.height - lastLineMarker.height) / 2
    }
}

참고: 해당 핸들러는 onLineLaidOut 입니다.


linkActivated(string link)

이 신호는 사용자가 텍스트에 포함된 링크를 클릭할 때 발생합니다. 링크는 서식 있는 텍스트 또는 HTML 형식이어야 하며 link 문자열은 특정 링크에 대한 액세스를 제공합니다.

    Text {
            textFormat: Text.RichText
            text: "See the <a href=\"http://qt-project.org\">Qt Project website</a>."
            onLinkActivated: (link)=> console.log(link + " link activated")
    }

예제 코드에는 " Qt 프로젝트 웹사이트 참조"라는 텍스트가 표시됩니다.

강조 표시된 링크를 클릭하면 http://qt-project.org link activated 이 콘솔에 출력됩니다.

참고: 해당 핸들러는 onLinkActivated 입니다.


linkHovered(string link)

이 신호는 사용자가 텍스트에 포함된 링크를 마우스로 가리키면 발생합니다. 링크는 서식 있는 텍스트 또는 HTML 형식이어야 하며 link 문자열은 특정 링크에 대한 액세스를 제공합니다.

참고: 해당 핸들러는 onLinkHovered 입니다.

hoveredLinklinkAt()도 참조하세요 .


메서드 문서

forceLayout()

표시된 텍스트의 다시 레이아웃을 트리거합니다.


linkAt(real x, real y)

콘텐츠 좌표에서 x, y 지점의 링크 문자열을 반환하거나 해당 지점에 링크가 없는 경우 빈 문자열을 반환합니다.

hoveredLink참조하세요 .


© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.