QFontMetricsF Class
QFontMetricsF 클래스는 글꼴 메트릭 정보를 제공합니다. 더 보기...
| 헤더: | #include <QFontMetricsF> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
- 상속된 멤버를 포함한 모든 멤버 목록
- QFontMetricsF는 페인팅 클래스 및 암시적 공유 클래스의 일부입니다.
참고: 이 클래스의 모든 함수는 재진입 가능합니다.
공개 함수
| QFontMetricsF(const QFont &font) | |
| QFontMetricsF(const QFontMetrics &fontMetrics) | |
| QFontMetricsF(const QFont &font, const QPaintDevice *paintdevice) | |
| QFontMetricsF(const QFontMetricsF &fm) | |
| QFontMetricsF(QFontMetricsF &&) | |
| ~QFontMetricsF() | |
| qreal | ascent() const |
| qreal | averageCharWidth() const |
| QRectF | boundingRect(QChar ch) const |
| QRectF | boundingRect(const QString &text) const |
(since 6.3) QRectF | boundingRect(const QString &text, const QTextOption &option) const |
| QRectF | boundingRect(const QRectF &rect, int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const |
| qreal | capHeight() const |
| qreal | descent() const |
| QString | elidedText(const QString &text, Qt::TextElideMode mode, qreal width, int flags = 0) const |
| qreal | fontDpi() const |
| qreal | height() const |
(since 6.3) qreal | horizontalAdvance(const QString &text, const QTextOption &option) const |
| qreal | horizontalAdvance(const QString &text, int length = -1) const |
| qreal | horizontalAdvance(QChar ch) const |
| bool | inFont(QChar ch) const |
| bool | inFontUcs4(uint ch) const |
| qreal | leading() const |
| qreal | leftBearing(QChar ch) const |
| qreal | lineSpacing() const |
| qreal | lineWidth() const |
| qreal | maxWidth() const |
| qreal | minLeftBearing() const |
| qreal | minRightBearing() const |
| qreal | overlinePos() const |
| qreal | rightBearing(QChar ch) const |
| QSizeF | size(int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const |
| qreal | strikeOutPos() const |
| void | swap(QFontMetricsF &other) |
| QRectF | tightBoundingRect(const QString &text) const |
(since 6.3) QRectF | tightBoundingRect(const QString &text, const QTextOption &option) const |
| qreal | underlinePos() const |
| qreal | xHeight() const |
| bool | operator!=(const QFontMetricsF &other) const |
| QFontMetricsF & | operator=(QFontMetricsF &&other) |
| QFontMetricsF & | operator=(const QFontMetrics &other) |
| QFontMetricsF & | operator=(const QFontMetricsF &fm) |
| bool | operator==(const QFontMetricsF &other) const |
상세 설명
QFontMetricsF 함수는 주어진 글꼴에 대한 문자 및 문자열의 크기를 계산합니다. 기존 QFont 를 사용하여 QFontMetricsF 객체를 생성하면 해당 글꼴의 메트릭을 얻을 수 있습니다. 나중에 글꼴이 변경되더라도 글꼴 메트릭 객체는 업데이트되지 않습니다.
일단 생성된 객체는 폰트, 그 문자, 그리고 해당 폰트로 렌더링된 문자열의 개별 메트릭에 접근할 수 있는 함수를 제공합니다.
글꼴을 대상으로 작동하는 여러 함수가 있습니다: ` ascent()`, ` descent()`, ` height()`, ` leading()` 및 ` lineSpacing()`는 글꼴의 기본 크기 속성을 반환합니다. ` underlinePos()`, ` overlinePos()`, ` strikeOutPos()` 및 ` lineWidth()` 함수는 문자에 밑줄, 위줄 또는 취소선을 그리는 속성을 반환합니다. 이 함수들은 모두 처리 속도가 빠릅니다.
또한 글꼴 내 글리프 집합을 대상으로 작동하는 몇 가지 함수도 있습니다: minLeftBearing(), minRightBearing() 및 maxWidth(). 이러한 함수는 필연적으로 처리 속도가 느리므로, 가능하면 사용을 피하는 것이 좋습니다.
각 문자에 대해 horizontalAdvance(), leftBearing() 및 rightBearing()를 호출할 수 있으며, inFont()를 사용하여 해당 문자가 폰트에 포함되어 있는지 확인할 수 있습니다. 또한 문자를 문자열로 간주하여 문자열 함수를 적용할 수도 있습니다.
문자열 함수에는 문자열의 너비를 픽셀(또는 프린터의 경우 포인트) 단위로 반환하는 horizontalAdvance(), 렌더링된 문자열을 담을 수 있을 만큼 충분히 큰 사각형을 반환하는 boundingRect(), 그리고 해당 사각형의 크기를 반환하는 size() 등이 있습니다.
QFontMetrics boundingRect()와 ()는 문자열의 경계를 계산하는 두 가지 서로 다른 함수이며, 각각 여러 오버로드가 있습니다. 정확한 경계 사각형이 필요한 경우에는 ()를 사용하는 것이 좋습니다. 이 함수는 각 글리프를 개별적으로 측정하여 렌더링된 텍스트를 꽉 감싸는 경계 사각형을 반환합니다. 플랫폼에 따라 () 함수는 근사적인 경계를 반환할 수 있지만, 계산량이 적습니다. tightBoundingRect tightBoundingRect boundingRect
예시:
QFont font("times", 24);
QFontMetricsF fm(font);
qreal pixelsWide = fm.horizontalAdvance("What's the advance width of this text?");
qreal pixelsHigh = fm.height();QFont, QFontInfo, QFontDatabase도 참조하십시오 .
멤버 함수 문서
[explicit] QFontMetricsF::QFontMetricsF(const QFont &font)
font 에 대한 글꼴 메트릭스 객체를 생성합니다.
이 글꼴 메트릭은 ` font`을 생성하는 데 사용된 페인트 장치와 호환됩니다.
이 글꼴 메트릭스 객체는 생성 시 생성자에 전달된 글꼴에 대한 정보를 보유하며, 이후 글꼴의 속성이 변경되더라도 업데이트되지 않습니다.
QFontMetricsF(const QFont &, QPaintDevice *)를 사용하여 특정 페인트 장치와 호환되는 글꼴 메트릭을 가져옵니다.
QFontMetricsF::QFontMetricsF(const QFontMetrics &fontMetrics)
주어진 ` fontMetrics ` 객체를 사용하여 부동 소수점 정밀도의 글꼴 메트릭스 객체를 생성합니다.
QFontMetricsF::QFontMetricsF(const QFont &font, const QPaintDevice *paintdevice)
font 및 paintdevice 에 대한 글꼴 메트릭스 객체를 생성합니다.
이 글꼴 메트릭은 전달된 페인트 디바이스와 호환됩니다. paintdevice 가 nullptr 인 경우, 메트릭은 화면 호환형입니다. 즉, QPicture 이나 QPrinter 가 아닌 widgets 또는 pixmaps 에서 텍스트를 그릴 때 사용되는 글꼴의 메트릭을 반환합니다.
폰트 메트릭스 객체는 생성 시 생성자에 전달된 폰트에 대한 정보를 보관하며, 이후 폰트의 속성이 변경되더라도 업데이트되지 않습니다.
QFontMetricsF::QFontMetricsF(const QFontMetricsF &fm)
fm 의 복사본을 생성합니다.
[constexpr noexcept default] QFontMetricsF::QFontMetricsF(QFontMetricsF &&)
QFontMetricsF 의 인스턴스를 Move 방식으로 생성합니다.
[noexcept] QFontMetricsF::~QFontMetricsF()
글꼴 메트릭스 객체를 삭제하고 할당된 모든 리소스를 해제합니다.
qreal QFontMetricsF::ascent() const
글꼴의 상승 높이를 반환합니다.
글꼴의 상승 높이는 기준선에서 문자가 뻗어 나가는 가장 높은 위치까지의 거리입니다. 실제로 일부 글꼴 디자이너는 이 규칙을 어기기도 합니다(예: 문자 위에 악센트를 두 개 이상 붙이거나 특정 문자를 수용하기 위해). 따라서 이 값이 너무 작게 나올 가능성도 있습니다(비록 드물지만).
descent()도 참조하십시오 .
qreal QFontMetricsF::averageCharWidth() const
글꼴에 포함된 글리프의 평균 너비를 반환합니다.
QRectF QFontMetricsF::boundingRect(QChar ch) const
ch 문자의 바운딩 사각형을 기준선의 가장 왼쪽 지점을 기준으로 반환합니다.
경계 사각형은 (0, 0)의 왼쪽까지 확장될 수 있으며(예: 이탤릭체 글꼴의 경우), 텍스트 출력이 경계 사각형 내의 모든 픽셀을 덮을 수 있다는 점에 유의하십시오.
이 사각형은 대개 기준선의 위쪽과 아래쪽 모두로 확장된다는 점에 유의하십시오.
horizontalAdvance()도 참조하십시오 .
QRectF QFontMetricsF::boundingRect(const QString &text) const
text 로 지정된 문자열 내의 문자들에 대한 경계 사각형을 반환합니다. 이 경계 사각형은 항상 (0, 0) 위치에 텍스트가 그려졌을 때 차지할 픽셀 집합을 최소한 포함합니다.
경계 사각형은 (0, 0)의 왼쪽으로 확장될 수 있으며(예: 이탤릭체 글꼴의 경우), 반환된 사각형의 너비는 horizontalAdvance() 메서드가 반환하는 값과 다를 수 있습니다.
문자열의 진척 폭을 알고 싶다면(여러 문자열을 나란히 배치하기 위해), 대신 horizontalAdvance()을 사용하십시오.
줄 바꿈 문자는 줄 바꿈이 아닌 일반 문자로 처리됩니다.
바운딩 사각형의 높이는 height()가 반환하는 값만큼 또는 그보다 큽니다.
horizontalAdvance(), height() 및 QPainter::boundingRect()도 참조하십시오 .
[since 6.3] QRectF QFontMetricsF::boundingRect(const QString &text, const QTextOption &option) const
text 로 지정된 문자열 내의 문자들을 option 를 사용하여 배열했을 때의 경계 사각형을 반환합니다. 이 경계 사각형은 항상 (0, 0) 위치에 텍스트가 그려졌을 때 차지할 픽셀 집합을 최소한 포함합니다.
경계 사각형은 (0, 0)의 왼쪽으로 확장될 수 있으며(예: 이탤릭체 글꼴의 경우), 반환된 사각형의 너비는 horizontalAdvance() 메서드가 반환하는 값과 다를 수 있습니다.
문자열의 진척 폭을 알고 싶다면(여러 문자열을 나란히 배치하기 위해), 대신 horizontalAdvance()을 사용하십시오.
줄 바꿈 문자는 줄 바꿈이 아닌 일반 문자로 처리됩니다.
바운딩 사각형의 높이는 height()가 반환하는 값만큼 또는 그보다 큽니다.
이 함수는 Qt 6.3에서 도입되었습니다.
horizontalAdvance(), height() 및 QPainter::boundingRect()도 참조하십시오 .
QRectF QFontMetricsF::boundingRect(const QRectF &rect, int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const
주어진 ` text` 내의 문자들에 대한 경계 사각형을 반환합니다. 이는 ` rect`로 지정된 경계 사각형 내에서 텍스트가 그려질 때 텍스트가 차지하게 될 픽셀 집합입니다. ` rect `가 ` nullptr ` 객체에 대한 참조인 경우(예: 기본 생성된 ` QRectF`를 전달할 때), 경계 사각형은 해당 크기로 제한되지 않습니다.
flags 인수는 다음 플래그들의 비트별 OR 연산 결과입니다:
- Qt::AlignLeft 왼쪽 테두리에 정렬합니다. 단, 아랍어와 히브리어는 오른쪽 테두리에 정렬됩니다.
- Qt::AlignRight 오른쪽 테두리에 정렬합니다. 단, 아랍어와 히브리어는 왼쪽에 정렬됩니다.
- Qt::AlignJustify 텍스트를 양쪽 정렬로 만듭니다.
- Qt::AlignHCenter 수평으로 중앙 정렬합니다.
- Qt::AlignTop 상단 테두리에 정렬합니다.
- Qt::AlignBottom 하단 여백에 정렬합니다.
- Qt::AlignVCenter 수직으로 중앙 정렬합니다.
- Qt::AlignCenter (==
Qt::AlignHCenter | Qt::AlignVCenter) - Qt::TextSingleLine 텍스트 내의 줄바꿈 문자를 무시합니다.
- Qt::TextExpandTabs 탭을 확장합니다(아래 참조).
- Qt::TextShowMnemonic "&x"를 x로 해석합니다. 즉, 밑줄이 그어집니다.
- Qt::TextWordWrap 텍스트를 직사각형 크기에 맞게 분할합니다.
Qt::Horizontal 정렬은 기본적으로 Qt::AlignLeft 이고, 세로 정렬은 기본적으로 Qt::AlignTop 입니다.
여러 개의 수평 정렬 플래그나 여러 개의 수직 정렬 플래그가 설정된 경우, 결과 정렬은 정의되지 않습니다.
이러한 플래그는 Qt::AlignmentFlag 에 정의되어 있습니다.
Qt::TextExpandTabs 가 flags 로 설정된 경우, 텍스트 내 탭 문자를 해석할 때 다음과 같은 동작이 적용됩니다:
- tabArray 가 null이 아닌 경우, 텍스트 내 탭에 대한 0으로 종료되는 픽셀 위치 시퀀스를 지정합니다.
- tabStops 가 0이 아닌 경우, 이 값은 탭 간격(픽셀 단위)으로 사용됩니다.
이탤릭체 글꼴의 경우와 같이, 경계 사각형이 (0, 0)의 왼쪽으로 확장될 수 있다는 점에 유의하십시오.
줄 바꿈 문자는 줄 바꿈으로 처리됩니다.
실제 문자 높이는 다르지만, "Yes"와 "yes"의 경계 사각형의 높이는 동일합니다.
이 함수가 반환하는 경계 사각형은 더 간단한 boundingRect() 함수로 계산된 것보다 다소 큽니다. 이 함수는 여러 줄의 텍스트가 올바르게 정렬되도록 하기 위해 maximum left 및 right 글꼴 베어링을 사용합니다. 또한, 개별 문자 높이 대신 fontHeight() 및 lineSpacing()를 사용하여 높이를 계산합니다.
이 함수는 오버로드된 함수입니다.
horizontalAdvance(), QPainter::boundingRect() 및 Qt::Alignment도 참조하십시오 .
qreal QFontMetricsF::capHeight() const
글꼴의 대문자 높이를 반환합니다.
글꼴의 대문자 높이는 베이스라인 위 대문자의 높이를 의미합니다. 구체적으로 말하면, O와 같이 둥근 글자나 A와 같이 끝이 뾰족한 글자(이 두 글자는 오버슈트가 발생할 수 있음)와는 달리, H나 I와 같이 평평한 대문자의 높이를 말합니다.
ascent()도 참조하십시오 .
qreal QFontMetricsF::descent() const
글꼴의 하강 높이를 반환합니다.
하강 높이는 기준선에서 문자가 닿는 가장 낮은 지점까지의 거리입니다. (이는 1픽셀을 더하는 X와는 다르다는 점에 유의하십시오.) 실제로 일부 글꼴 디자이너는 특정 문자를 수용하기 위해 이 규칙을 어기기도 하므로, 이 값이 너무 작을 가능성도 있습니다(비록 드물지만).
ascent()도 참조하십시오 .
QString QFontMetricsF::elidedText(const QString &text, Qt::TextElideMode mode, qreal width, int flags = 0) const
문자열 text 의 너비가 width 보다 넓을 경우, 해당 문자열의 생략된 버전(즉, "..."이 포함된 문자열)을 반환합니다. 그렇지 않으면 원래 문자열을 반환합니다.
mode 매개변수는 텍스트가 왼쪽(예: "...tech"), 중간(예: "Tr...ch"), 또는 오른쪽(예: "Trol...")에서 생략되는지를 지정합니다.
width 는 문자가 아닌 픽셀 단위로 지정됩니다.
flags 인수는 선택 사항이며, 현재 값으로는 Qt::TextShowMnemonic 만 지원합니다.
mode 생략 표시(elide mark)는 생략 위치( layoutdirection) 뒤에 나옵니다. 예를 들어, 생략 위치가 Qt::ElideLeft 인 경우 오른쪽에서 왼쪽으로 진행되는 레이아웃에서는 텍스트의 오른쪽에 표시되고, mode 가 Qt::ElideRight 인 경우 텍스트의 왼쪽에 표시됩니다.
qreal QFontMetricsF::fontDpi() const
글꼴 DPI를 반환합니다.
qreal QFontMetricsF::height() const
글꼴의 높이를 반환합니다.
이 값은 항상 ascent() +descent()과 같습니다.
leading() 및 lineSpacing()도 참조하십시오 .
[since 6.3] qreal QFontMetricsF::horizontalAdvance(const QString &text, const QTextOption &option) const
option 를 사용하여 레이아웃된 text 의 수평 이동 거리(픽셀 단위)를 반환합니다.
이 간격은 text 뒤에 다음 문자를 그리는 데 적합한 거리입니다.
이 함수는 Qt 6.3에서 도입되었습니다.
boundingRect()도 참조하십시오 .
qreal QFontMetricsF::horizontalAdvance(const QString &text, int length = -1) const
text 의 첫 번째 length 자들에 대한 수평 이동 거리(픽셀 단위)를 반환합니다. length 가 음수(기본값)인 경우, 문자열 전체가 사용됩니다. length 가 훨씬 짧더라도 text 의 전체 길이가 분석됩니다.
이진 이동량(advance)은 text 이후의 다음 문자를 그리는 데 적합한 거리입니다.
boundingRect()도 참조하십시오 .
qreal QFontMetricsF::horizontalAdvance(QChar ch) const

ch 의 수평 이동량을 픽셀 단위로 반환합니다. 이는 ch 호출 후 다음 문자를 그리는 데 적합한 거리입니다.
일부 메트릭은 오른쪽 이미지에 설명되어 있습니다. 중앙의 어두운 사각형은 각 글자의 논리적 horizontalAdvance()를 나타냅니다. 바깥쪽의 연한 사각형은 각 글자의 leftBearing()와 rightBearing()를 나타냅니다. 이 특정 글꼴에서 “f”의 베어링은 모두 음수인 반면, “o”의 베어링은 모두 양수라는 점에 유의하십시오.
경고: 이 함수는 문자열 처리 과정에서 발생하는 글리프 모양 조정 및 기호 위치 설정을 고려할 수 없기 때문에, 문자열 중간에 아랍어 문자나 비공백 기호가 포함된 경우 잘못된 결과를 반환할 수 있습니다. 대화형 텍스트 컨트롤을 구현할 때는 대신 QTextLayout 를 사용하십시오.
이 함수는 오버로드된 함수입니다.
boundingRect()도 참조하십시오 .
bool QFontMetricsF::inFont(QChar ch) const
문자 ch 가 해당 글꼴에서 유효한 문자일 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.
bool QFontMetricsF::inFontUcs4(uint ch) const
ch 로 지정된 문자가 UCS-4/UTF-32로 인코딩되었을 때, 해당 글꼴에서 유효한 문자라면 ` true `을 반환하고, 그렇지 않으면 ` false`을 반환합니다.
qreal QFontMetricsF::leading() const
글꼴의 선두 간격을 반환합니다.
이는 자연스러운 줄 간격입니다.
height() 및 lineSpacing()도 참조하십시오 .
qreal QFontMetricsF::leftBearing(QChar ch) const
글꼴 내의 문자 ch 의 왼쪽 방위각을 반환합니다.
왼쪽 베어링은 문자의 가장 왼쪽 픽셀이 문자의 논리적 원점으로부터 오른쪽으로 얼마나 떨어져 있는지를 나타냅니다. 문자의 픽셀이 논리적 원점의 왼쪽으로 뻗어 있는 경우 이 값은 음수가 됩니다.
이 측정값에 대한 그래픽 설명은 horizontalAdvance()을 참조하십시오.
rightBearing(), minLeftBearing() 및 horizontalAdvance()도 참조하십시오 .
qreal QFontMetricsF::lineSpacing() const
한 기준선에서 다음 기준선까지의 거리를 반환합니다.
이 값은 항상 leading() +height()과 같습니다.
height() 및 leading()도 참조하십시오 .
qreal QFontMetricsF::lineWidth() const
글꼴의 포인트 크기에 맞춰 조정된 밑줄 및 취소선의 너비를 반환합니다.
underlinePos(), overlinePos() 및 strikeOutPos()도 참조하십시오 .
qreal QFontMetricsF::maxWidth() const
글꼴에서 가장 넓은 문자의 너비를 반환합니다.
qreal QFontMetricsF::minLeftBearing() const
글꼴의 최소 왼쪽 방위각을 반환합니다.
이는 폰트에 포함된 모든 문자 중 가장 작은 좌측 베어링( leftBearing, char) 값입니다.
글꼴의 크기가 클 경우 이 함수의 실행 속도가 매우 느려질 수 있습니다.
minRightBearing() 및 leftBearing()도 참조하십시오 .
qreal QFontMetricsF::minRightBearing() const
글꼴의 최소 우측 베어링을 반환합니다.
이는 글꼴에 포함된 모든 문자 중 가장 작은 rightBearing(char) 값입니다.
글꼴의 크기가 클 경우 이 함수의 실행 속도가 매우 느려질 수 있습니다.
minLeftBearing() 및 rightBearing()도 참조하십시오 .
qreal QFontMetricsF::overlinePos() const
기준선에서 위선(overline)이 그려져야 할 위치까지의 거리를 반환합니다.
underlinePos(), strikeOutPos() 및 lineWidth()도 참조하십시오 .
qreal QFontMetricsF::rightBearing(QChar ch) const
글꼴에서 문자 ‘ ch ’의 오른쪽 방향을 반환합니다.
오른쪽 베어링은 해당 문자의 가장 오른쪽 픽셀이 다음 문자의 논리적 원점으로부터 왼쪽으로 얼마나 떨어져 있는지를 나타냅니다. 이 값은 문자의 픽셀이 horizontalAdvance()의 오른쪽까지 뻗어 있는 경우 음수가 됩니다.
이 측정값에 대한 그래픽 설명은 horizontalAdvance()을 참조하십시오.
leftBearing(), minRightBearing() 및 horizontalAdvance()도 참조하십시오 .
QSizeF QFontMetricsF::size(int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const
지정된 ` text`에 포함된 문자의 크기를 픽셀 단위로 반환합니다.
flags 인자는 다음 플래그들의 비트별 OR 연산 결과입니다:
- Qt::TextSingleLine 줄바꿈 문자를 무시합니다.
- Qt::TextExpandTabs 탭을 확장합니다(아래 참조).
- Qt::TextShowMnemonic "&x"를 x로 해석합니다. 즉, 밑줄이 그어진 것으로 간주합니다.
- Qt::TextWordWrap 텍스트를 직사각형에 맞게 분할합니다.
이러한 플래그는 ` Qt::TextFlag ` 열거형에 정의되어 있습니다.
flags 에서 Qt::TextExpandTabs 가 설정된 경우, 텍스트 내 탭 문자를 해석할 때 다음과 같은 동작이 적용됩니다:
- tabArray 가 null이 아닌 경우, 텍스트 내 탭에 대한 0으로 종료되는 픽셀 위치 시퀀스를 지정합니다.
- tabStops 가 0이 아닌 경우, 이 값은 탭 간격(픽셀 단위)으로 사용됩니다.
줄바꿈 문자는 줄 바꿈으로 처리됩니다.
참고: 실제 문자 높이는 다르지만, "Yes"와 "yes"의 경계 사각형 높이는 동일합니다.
boundingRect()도 참조하십시오 .
qreal QFontMetricsF::strikeOutPos() const
기준선에서 삼진선이 그려져야 할 위치까지의 거리를 반환합니다.
underlinePos(), overlinePos(), lineWidth()도 참조하십시오 .
[noexcept] void QFontMetricsF::swap(QFontMetricsF &other)
이 글꼴 메트릭스 인스턴스를 other 로 교체합니다. 이 작업은 매우 빠르며 실패하는 일이 없습니다.
QRectF QFontMetricsF::tightBoundingRect(const QString &text) const
text 로 지정된 문자열 내의 문자들을 둘러싼 가장 작은 사각형을 반환합니다. 이 사각형은 항상 텍스트가 (0, 0) 위치에 그려졌을 때 차지할 픽셀 영역을 최소한 포함합니다.
경계 사각형은 (0, 0)의 왼쪽으로 확장될 수 있으며(예: 이탤릭체 글꼴의 경우), 반환된 사각형의 너비는 horizontalAdvance() 메서드가 반환하는 값과 다를 수 있습니다.
문자열의 진척 폭을 알고 싶다면(여러 문자열을 나란히 배치하기 위해), 대신 horizontalAdvance()을 사용하십시오.
줄바꿈 문자는 줄바꿈으로 처리되지 않고 일반 문자로 처리됩니다.
horizontalAdvance(), height() 및 boundingRect()도 참조하십시오 .
[since 6.3] QRectF QFontMetricsF::tightBoundingRect(const QString &text, const QTextOption &option) const
text 로 지정된 문자열 내의 문자들을 option 를 사용하여 배열한 후, 이를 둘러싸는 가장 작은 사각형을 반환합니다. 이 사각형은 항상 텍스트가 (0, 0) 위치에 그려졌을 때 차지할 픽셀 영역을 최소한 포함합니다.
경계 사각형은 (0, 0)의 왼쪽까지 확장될 수 있으며(예: 이탤릭체 글꼴의 경우), 반환된 사각형의 너비는 horizontalAdvance() 메서드가 반환하는 값과 다를 수 있습니다.
문자열의 간격(여러 문자열을 나란히 배치하기 위해)을 알고 싶다면, 대신 horizontalAdvance()을 사용하십시오.
줄 바꿈 문자는 줄 바꿈이 아닌 일반 문자로 처리됩니다.
이 함수는 Qt 6.3에서 도입되었습니다.
horizontalAdvance(), height() 및 boundingRect()도 참조하십시오 .
qreal QFontMetricsF::underlinePos() const
베이스라인에서 밑줄이 그려져야 할 위치까지의 거리를 반환합니다.
overlinePos(), strikeOutPos(), lineWidth()도 참조하십시오 .
qreal QFontMetricsF::xHeight() const
글꼴의 'x' 높이를 반환합니다. 이 값은 대개 문자 'x'의 높이와 같지만, 항상 그런 것은 아닙니다.
bool QFontMetricsF::operator!=(const QFontMetricsF &other) const
글꼴 메트릭이 other 의 글꼴 메트릭과 일치하지 않으면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.
operator==()도 참조하십시오 .
[noexcept] QFontMetricsF &QFontMetricsF::operator=(QFontMetricsF &&other)
other 를 이 QFontMetricsF 인스턴스에 할당합니다.
QFontMetricsF &QFontMetricsF::operator=(const QFontMetrics &other)
이 객체에 other 을 할당합니다.
QFontMetricsF &QFontMetricsF::operator=(const QFontMetricsF &fm)
이 글꼴 메트릭스 객체에 글꼴 메트릭스 fm 를 할당합니다.
bool QFontMetricsF::operator==(const QFontMetricsF &other) const
글꼴 메트릭이 other 의 글꼴 메트릭과 동일한 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.
두 글꼴 메트릭은 동일한 QFont 을 기반으로 생성되었고, 해당 메트릭이 생성된 페인트 장치들이 호환되는 것으로 간주될 경우 서로 동일한 것으로 간주됩니다.
© 2026 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.