PathText QML Type

지정된 글꼴로 문자열을 정의합니다. 더 보기...

Import Statement: import QtQuick
Since: QtQuick 2.15

속성

상세 설명

이 요소는 지정된 글꼴로 지정된 문자열의 모양을 정의합니다. 텍스트의 기준선이 x 및 y 좌표로 변환되고 글꼴의 윤곽선이 그에 따라 경로에 추가됩니다.

PathText {
    x: 0
    y: font.pixelSize
    font.family: "Arial"
    font.pixelSize: 100
    text: "Foobar"
}

Path, QPainterPath::setFillRule, PathPolyline, PathQuad, PathCubic, PathArc, PathAngleArc, PathCurve, PathSvg, PathMove참조하세요 .

속성 문서

font.bold : bool

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


font.capitalization : enumeration

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

Constant설명
Font.MixedCase대문자 변경이 적용되지 않습니다.
Font.AllUppercase텍스트가 모든 대문자로 렌더링되도록 변경합니다.
Font.AllLowercase텍스트가 모든 소문자로 렌더링되도록 변경합니다.
Font.SmallCaps텍스트를 소문자 타입으로 렌더링하도록 변경합니다.
Font.Capitalize각 단어의 첫 번째 문자를 대문자로 렌더링할 텍스트를 변경합니다.
PathText { 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.italic : bool

글꼴에 이탤릭체 스타일이 있는지 여부를 설정합니다.


font.kerning : bool

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

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

font.letterSpacing : real

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

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


font.pixelSize : int

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

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


font.pointSize : real

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


font.preferShaping : bool

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

기본값은 참입니다.

PathText { 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

글꼴의 무게를 설정합니다.

가중치는 다음 중 하나일 수 있습니다:

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

font.wordSpacing : real

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

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


text : string

PathText 의 텍스트에는 윤곽선이 포함되어야 합니다.


x : real

PathText 의 기준선의 가로 위치입니다.


y : real

PathText 의 기준선의 수직 위치입니다.

참고: 이 속성은 텍스트의 경계 상자 상단이 아닌 텍스트의 기준선 위치를 나타냅니다. 예를 들어 PathText 도형과 Qt Quick 도형을 함께 사용할 때 혼동을 일으킬 수 있습니다. 텍스트를 예상 위치로 번역하는 데 사용할 수 있는 글꼴의 높이를 구하는 방법에 대한 자세한 내용은 FontMetrics 을 참조하세요.


© 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.