Класс QChar
Класс QChar предоставляет 16-битный символ Unicode. Подробнее...
| Заголовок: | #include <QChar> |
| qmake: | QT += core |
Примечание: Все функции в этом классе являются реентерабельными.
Открытые типы
| enum | Category { Mark_NonSpacing, Mark_SpacingCombining, Mark_Enclosing, Number_DecimalDigit, Number_Letter, …, Symbol_Other } |
| enum | Decomposition { NoDecomposition, Canonical, Circle, Compat, Final, …, Wide } |
| enum | Direction { DirAL, DirAN, DirB, DirBN, DirCS, …, DirWS } |
| enum | JoiningType { Joining_None, Joining_Causing, Joining_Dual, Joining_Right, Joining_Left, Joining_Transparent } |
| enum | Script { Script_Unknown, Script_Inherited, Script_Common, Script_Adlam, Script_Ahom, …, Script_ZanabazarSquare } |
| enum | SpecialCharacter { Null, Tabulation, LineFeed, FormFeed, CarriageReturn, …, LastValidCodePoint } |
| enum | UnicodeVersion { Unicode_1_1, Unicode_2_0, Unicode_2_1_2, Unicode_3_0, Unicode_3_1, …, Unicode_Unassigned } |
Открытые функции
| QChar(uchar ch) | |
| QChar(char ch) | |
| QChar(wchar_t ch) | |
| QChar(char16_t ch) | |
| QChar(QLatin1Char ch) | |
| QChar(QChar::SpecialCharacter ch) | |
| QChar(int code) | |
| QChar(uint code) | |
| QChar(short code) | |
| QChar(uchar cell, uchar row) | |
| QChar(ushort code) | |
| QChar() | |
| QChar::Category | category() const |
| uchar | cell() const |
| unsigned char | combiningClass() const |
| QString | decomposition() const |
| QChar::Decomposition | decompositionTag() const |
| int | digitValue() const |
| QChar::Direction | direction() const |
| bool | hasMirrored() const |
| bool | isDigit() const |
| bool | isHighSurrogate() const |
| bool | isLetter() const |
| bool | isLetterOrNumber() const |
| bool | isLowSurrogate() const |
| bool | isLower() const |
| bool | isMark() const |
| bool | isNonCharacter() const |
| bool | isNull() const |
| bool | isNumber() const |
| bool | isPrint() const |
| bool | isPunct() const |
| bool | isSpace() const |
| bool | isSurrogate() const |
| bool | isSymbol() const |
| bool | isTitleCase() const |
| bool | isUpper() const |
| QChar::JoiningType | joiningType() const |
| QChar | mirroredChar() const |
| uchar | row() const |
| QChar::Script | script() const |
| QChar | toCaseFolded() const |
| char | toLatin1() const |
| QChar | toLower() const |
| QChar | toTitleCase() const |
| QChar | toUpper() const |
| ushort | unicode() const |
| ushort & | unicode() |
| QChar::UnicodeVersion | unicodeVersion() const |
Статические открытые члены
| QChar::Category | category(uint ucs4) |
| unsigned char | combiningClass(uint ucs4) |
| QChar::UnicodeVersion | currentUnicodeVersion() |
| QString | decomposition(uint ucs4) |
| QChar::Decomposition | decompositionTag(uint ucs4) |
| int | digitValue(uint ucs4) |
| QChar::Direction | direction(uint ucs4) |
| QChar | fromLatin1(char c) |
| bool | hasMirrored(uint ucs4) |
| ushort | highSurrogate(uint ucs4) |
| bool | isDigit(uint ucs4) |
| bool | isHighSurrogate(uint ucs4) |
| bool | isLetter(uint ucs4) |
| bool | isLetterOrNumber(uint ucs4) |
| bool | isLowSurrogate(uint ucs4) |
| bool | isLower(uint ucs4) |
| bool | isMark(uint ucs4) |
| bool | isNonCharacter(uint ucs4) |
| bool | isNumber(uint ucs4) |
| bool | isPrint(uint ucs4) |
| bool | isPunct(uint ucs4) |
| bool | isSpace(uint ucs4) |
| bool | isSurrogate(uint ucs4) |
| bool | isSymbol(uint ucs4) |
| bool | isTitleCase(uint ucs4) |
| bool | isUpper(uint ucs4) |
| QChar::JoiningType | joiningType(uint ucs4) |
| ushort | lowSurrogate(uint ucs4) |
| uint | mirroredChar(uint ucs4) |
| bool | requiresSurrogates(uint ucs4) |
| QChar::Script | script(uint ucs4) |
| uint | surrogateToUcs4(ushort high, ushort low) |
| uint | surrogateToUcs4(QChar high, QChar low) |
| uint | toCaseFolded(uint ucs4) |
| uint | toLower(uint ucs4) |
| uint | toTitleCase(uint ucs4) |
| uint | toUpper(uint ucs4) |
| QChar::UnicodeVersion | unicodeVersion(uint ucs4) |
Связанные нечлены
| bool | operator!=(QChar c1, QChar c2) |
| bool | operator<(QChar c1, QChar c2) |
| QDataStream & | operator<<(QDataStream &out, QChar chr) |
| bool | operator<=(QChar c1, QChar c2) |
| bool | operator==(QChar c1, QChar c2) |
| bool | operator>(QChar c1, QChar c2) |
| bool | operator>=(QChar c1, QChar c2) |
| QDataStream & | operator>>(QDataStream &in, QChar &chr) |
Подробное описание
В Qt, символы Юникода — это 16-разрядные сущности без каких-либо пометок или структуры. Этот класс представляет такую сущность. Он лёгкий, поэтому может использоваться повсеместно. Большинство компиляторов обрабатывают его как unsigned short.
QChar предоставляет полный набор функций проверки/классификации, преобразования в другие форматы, преобразования составленных символов Юникода в разложенные и попытки сравнения и преобразования регистра, если вы этого попросите.
Функции классификации включают функции, подобные функциям в стандартном заголовке C++ <cctype> (ранее <ctype.h>), но работающие с полным диапазоном символов Юникода, а не только с диапазоном ASCII. Все они возвращают true, если символ является определённым типом символа; в противном случае они возвращают false. Эти функции классификации включают isNull() (возвращает true если символ — '\0'), isPrint() (true, если символ — любой вид печатного символа, включая пробелы), isPunct() (любой вид пунктуации), isMark() (символ Юникода), isLetter() (буква), isNumber() (любой вид числового символа, не только 0-9), isLetterOrNumber() и isDigit() (десятичные цифры). Все они являются оболочками вокруг category(), которые возвращают категорию каждого символа, определённую Юникодом. Некоторые из них также вычисляют производные свойства (например, isSpace() возвращает true если символ относится к категории Separator_* или является исключительным кодовым значением из категории Other_Control).
QChar также предоставляет direction(), которая указывает «естественное» направление письма для данного символа. Функция joiningType() указывает, как символ соединяется со своими соседями (в основном необходимо для арабского или сирийского языка), а функция hasMirrored() указывает, нужно ли зеркально отображать символ при печати в «непривычном» направлении письма.
Составные символы Юникода (например, ring) можно преобразовать в разложенные символы Юникода («a» и «ring above») с помощью decomposition().
В Юникоде сравнение не всегда возможно, а преобразование регистра — очень сложная задача. Юникод, охватывающий «весь» мир, также включает большинство проблем с регистром и сортировкой в мире. operator==() и аналогичные функции будут выполнять сравнение, основываясь исключительно на числовом значении Юникода (кодовом значении) символов, а toUpper() и toLower() будут выполнять преобразования регистра, когда символ имеет чётко определённый эквивалент в верхнем/нижнем регистре. Для сравнений, зависящих от локали, используйте QString::localeAwareCompare().
Функции преобразования включают unicode() (в скаляр), toLatin1() (в скаляр, но преобразует все символы, не являющиеся Latin-1, в 0), row() (возвращает строку Юникода), cell() (возвращает ячейку Юникода), digitValue() (возвращает целое значение любого из многочисленных символов цифр) и множество конструкторов.
QChar предоставляет конструкторы и операторы преобразования, которые упрощают преобразование в традиционные 8-битные char и из них. Если вы определили QT_NO_CAST_FROM_ASCII и QT_NO_CAST_TO_ASCII, как объяснено в документации QString, вам необходимо явно вызвать fromLatin1() или использовать QLatin1Char, чтобы создать QChar из 8-битного char, и вам нужно вызвать toLatin1(), чтобы получить обратно 8-битное значение.
Дополнительную информацию см. на странице "О базе данных символов Юникода".
См. также Unicode, QString и QLatin1Char.
Документация по типам членов
enum QChar::Category
Этот перечисление отображает категории символов Юникода.
Следующие символы являются нормативными в Юникоде:
| Константа | Значение | Описание |
|---|---|---|
QChar::Mark_NonSpacing |
0 |
Имя класса Юникода Mn |
QChar::Mark_SpacingCombining |
1 |
Имя класса Юникода Mc |
QChar::Mark_Enclosing |
2 |
Имя класса Юникода Me |
QChar::Number_DecimalDigit |
3 |
Имя класса Юникода Nd |
QChar::Number_Letter |
4 |
Имя класса Юникода Nl |
QChar::Number_Other |
5 |
Имя класса Юникода No |
QChar::Separator_Space |
6 |
Имя класса Юникода Zs |
QChar::Separator_Line |
7 |
Имя класса Юникода Zl |
QChar::Separator_Paragraph |
8 |
Имя класса Юникода Zp |
QChar::Other_Control |
9 |
Имя класса Юникода Cc |
QChar::Other_Format |
10 |
Имя класса Юникода Cf |
QChar::Other_Surrogate |
11 |
Имя класса Юникода Cs |
QChar::Other_PrivateUse |
12 |
Имя класса Юникода Co |
QChar::Other_NotAssigned |
13 |
Имя класса Юникода Cn |
Следующие категории являются информативными в Юникоде:
| Константа | Значение | Описание |
|---|---|---|
QChar::Letter_Uppercase |
14 |
Имя класса Юникода Lu |
QChar::Letter_Lowercase |
15 |
Имя класса Юникода Ll |
QChar::Letter_Titlecase |
16 |
Имя класса Юникода Lt |
QChar::Letter_Modifier |
17 |
Имя класса Юникода Lm |
QChar::Letter_Other |
18 |
Имя класса Юникода Lo |
QChar::Punctuation_Connector |
19 |
Имя класса Юникода Pc |
QChar::Punctuation_Dash |
20 |
Имя класса Юникода Pd |
QChar::Punctuation_Open |
21 |
Имя класса Юникода Ps |
QChar::Punctuation_Close |
22 |
Имя класса Юникода Pe |
QChar::Punctuation_InitialQuote |
23 |
Имя класса Юникода Pi |
QChar::Punctuation_FinalQuote |
24 |
Имя класса Юникода Pf |
QChar::Punctuation_Other |
25 |
Имя класса Юникода Po |
QChar::Symbol_Math |
26 |
Имя класса Юникода Sm |
QChar::Symbol_Currency |
27 |
Имя класса Юникода Sc |
QChar::Symbol_Modifier |
28 |
Имя класса Юникода Sk |
QChar::Symbol_Other |
29 |
Имя класса Юникода So |
См. также category().
enum QChar::Decomposition
Этот тип перечисления определяет атрибуты разложения Юникода. Для описания значений см. Стандарт Юникода.
| Константа | Значение |
|---|---|
QChar::NoDecomposition |
0 |
QChar::Canonical |
1 |
QChar::Circle |
8 |
QChar::Compat |
16 |
QChar::Final |
6 |
QChar::Font |
2 |
QChar::Fraction |
17 |
QChar::Initial |
4 |
QChar::Isolated |
7 |
QChar::Medial |
5 |
QChar::Narrow |
13 |
QChar::NoBreak |
3 |
QChar::Small |
14 |
QChar::Square |
15 |
QChar::Sub |
10 |
QChar::Super |
9 |
QChar::Vertical |
11 |
QChar::Wide |
12 |
См. также decomposition().
enum QChar::Direction
Этот тип перечисления определяет атрибуты направления Юникода. Для описания значений см. Стандарт Юникода.
Для соответствия соглашениям об именовании C/C++ к кодам, используемым в стандарте Юникода, добавлен префикс "Dir".
END_OF_DOCUMENT_MARKER| Постоянная | Значение | Описание |
|---|---|---|
QChar::DirAL |
13 |
|
QChar::DirAN |
5 |
|
QChar::DirB |
7 |
|
QChar::DirBN |
18 |
|
QChar::DirCS |
6 |
|
QChar::DirEN |
2 |
|
QChar::DirES |
3 |
|
QChar::DirET |
4 |
|
QChar::DirFSI |
21 |
С Qt 5.3 |
QChar::DirL |
0 |
|
QChar::DirLRE |
11 |
|
QChar::DirLRI |
19 |
С Qt 5.3 |
QChar::DirLRO |
12 |
|
QChar::DirNSM |
17 |
|
QChar::DirON |
10 |
|
QChar::DirPDF |
16 |
|
QChar::DirPDI |
22 |
С Qt 5.3 |
QChar::DirR |
1 |
|
QChar::DirRLE |
14 |
|
QChar::DirRLI |
20 |
С Qt 5.3 |
QChar::DirRLO |
15 |
|
QChar::DirS |
8 |
|
QChar::DirWS |
9 |
См. также direction().
перечисление QChar::JoiningType
с 5.3
Это перечисление определяет атрибуты типа объединения Юникода. См. Стандарт Юникода для описания значений.
Для соответствия соглашениям об именах C/C++ к кодам, используемым в Стандарте Юникода, добавлен префикс "Joining_".
| Постоянная | Значение |
|---|---|
QChar::Joining_None |
0 |
QChar::Joining_Causing |
1 |
QChar::Joining_Dual |
2 |
QChar::Joining_Right |
3 |
QChar::Joining_Left |
4 |
QChar::Joining_Transparent |
5 |
См. также joiningType().
перечисление QChar::Script
Это перечисление определяет значения свойств скрипта Юникода.
Подробную информацию о значениях свойства скрипта Юникода см. в Приложение к Стандарту Юникода №24.
Для соответствия соглашениям об именах C/C++ к кодам, используемым в Стандарте Юникода, добавлен префикс "Script_".
| Константа | Значение | Описание |
|---|---|---|
QChar::Script_Unknown |
0 |
Для неназначенных, частных, несимвольных и суррогатных кодовых точек. |
QChar::Script_Inherited |
1 |
Для символов, которые могут использоваться с несколькими сценариями и которые наследуют свой сценарий от предшествующих символов. К ним относятся неразрывные знаки, знаки-оболочки и знаки соединения/разъединения нулевой ширины. |
QChar::Script_Common |
2 |
Для символов, которые могут использоваться с несколькими сценариями и которые не наследуют свой сценарий от предшествующих символов. |
QChar::Script_Adlam |
132 |
Начиная с Qt 5.11 |
QChar::Script_Ahom |
126 |
Начиная с Qt 5.6 |
QChar::Script_AnatolianHieroglyphs |
127 |
Начиная с Qt 5.6 |
QChar::Script_Arabic |
8 |
|
QChar::Script_Armenian |
6 |
|
QChar::Script_Avestan |
80 |
|
QChar::Script_Balinese |
62 |
|
QChar::Script_Bamum |
84 |
|
QChar::Script_BassaVah |
104 |
Начиная с Qt 5.5 |
QChar::Script_Batak |
93 |
|
QChar::Script_Bengali |
12 |
|
QChar::Script_Bhaiksuki |
133 |
Начиная с Qt 5.11 |
QChar::Script_Bopomofo |
36 |
|
QChar::Script_Brahmi |
94 |
|
QChar::Script_Braille |
54 |
|
QChar::Script_Buginese |
55 |
|
QChar::Script_Buhid |
44 |
|
QChar::Script_CanadianAboriginal |
29 |
|
QChar::Script_Carian |
75 |
|
QChar::Script_CaucasianAlbanian |
103 |
Начиная с Qt 5.5 |
QChar::Script_Chakma |
96 |
|
QChar::Script_Cham |
77 |
|
QChar::Script_Cherokee |
28 |
|
QChar::Script_Chorasmian |
153 |
Начиная с Qt 5.15 |
QChar::Script_Coptic |
46 |
|
QChar::Script_Cuneiform |
63 |
|
QChar::Script_Cypriot |
53 |
|
QChar::Script_Cyrillic |
5 |
|
QChar::Script_Deseret |
41 |
|
QChar::Script_Devanagari |
11 |
|
QChar::Script_DivesAkuru |
154 |
Начиная с Qt 5.15 |
QChar::Script_Dogra |
142 |
Начиная с Qt 5.15 |
QChar::Script_Duployan |
105 |
Начиная с Qt 5.5 |
QChar::Script_EgyptianHieroglyphs |
81 |
|
QChar::Script_Elbasan |
106 |
Начиная с Qt 5.5 |
QChar::Script_Elymaic |
149 |
Начиная с Qt 5.15 |
QChar::Script_Ethiopic |
27 |
|
QChar::Script_Georgian |
25 |
|
QChar::Script_Glagolitic |
57 |
|
QChar::Script_Gothic |
40 |
|
QChar::Script_Grantha |
107 |
Начиная с Qt 5.5 |
QChar::Script_Greek |
4 |
|
QChar::Script_Gujarati |
14 |
|
QChar::Script_GunjalaGondi |
143 |
Начиная с Qt 5.15 |
QChar::Script_Gurmukhi |
13 |
|
QChar::Script_Han |
37 |
|
QChar::Script_Hangul |
26 |
|
QChar::Script_HanifiRohingya |
144 |
Начиная с Qt 5.15 |
QChar::Script_Hanunoo |
43 |
|
QChar::Script_Hatran |
128 |
Начиная с Qt 5.6 |
QChar::Script_Hebrew |
7 |
|
QChar::Script_Hiragana |
34 |
|
QChar::Script_ImperialAramaic |
87 |
|
QChar::Script_InscriptionalPahlavi |
90 |
|
QChar::Script_InscriptionalParthian |
89 |
|
QChar::Script_Javanese |
85 |
|
QChar::Script_Kaithi |
92 |
|
QChar::Script_Kannada |
18 |
|
QChar::Script_Katakana |
35 |
|
QChar::Script_KayahLi |
72 |
|
QChar::Script_Kharoshthi |
61 |
|
QChar::Script_KhitanSmallScript |
155 |
Начиная с Qt 5.15 |
QChar::Script_Khmer |
32 |
|
QChar::Script_Khojki |
109 |
Начиная с Qt 5.5 |
QChar::Script_Khudawadi |
123 |
Начиная с Qt 5.5 |
QChar::Script_Lao |
22 |
|
QChar::Script_Latin |
3 |
|
QChar::Script_Lepcha |
68 |
|
QChar::Script_Limbu |
47 |
|
QChar::Script_LinearA |
110 |
Начиная с Qt 5.5 |
QChar::Script_LinearB |
49 |
|
QChar::Script_Lisu |
83 |
|
QChar::Script_Lycian |
74 |
|
QChar::Script_Lydian |
76 |
|
QChar::Script_Mahajani |
111 |
С Qt 5.5 |
QChar::Script_Makasar |
145 |
С Qt 5.15 |
QChar::Script_Malayalam |
19 |
|
QChar::Script_Mandaic |
95 |
|
QChar::Script_Manichaean |
112 |
С Qt 5.5 |
QChar::Script_Marchen |
134 |
С Qt 5.11 |
QChar::Script_MasaramGondi |
138 |
С Qt 5.11 |
QChar::Script_Medefaidrin |
146 |
С Qt 5.15 |
QChar::Script_MeeteiMayek |
86 |
|
QChar::Script_MendeKikakui |
113 |
С Qt 5.5 |
QChar::Script_MeroiticCursive |
97 |
|
QChar::Script_MeroiticHieroglyphs |
98 |
|
QChar::Script_Miao |
99 |
|
QChar::Script_Modi |
114 |
С Qt 5.5 |
QChar::Script_Mongolian |
33 |
|
QChar::Script_Mro |
115 |
С Qt 5.5 |
QChar::Script_Multani |
129 |
С Qt 5.6 |
QChar::Script_Myanmar |
24 |
|
QChar::Script_Nabataean |
117 |
С Qt 5.5 |
QChar::Script_Nandinagari |
150 |
С Qt 5.15 |
QChar::Script_Newa |
135 |
С Qt 5.11 |
QChar::Script_NewTaiLue |
56 |
|
QChar::Script_Nko |
66 |
|
QChar::Script_Nushu |
139 |
С Qt 5.11 |
QChar::Script_NyiakengPuachueHmong |
151 |
С Qt 5.15 |
QChar::Script_Ogham |
30 |
|
QChar::Script_OlChiki |
69 |
|
QChar::Script_OldHungarian |
130 |
С Qt 5.6 |
QChar::Script_OldItalic |
39 |
|
QChar::Script_OldNorthArabian |
116 |
С Qt 5.5 |
QChar::Script_OldPermic |
120 |
С Qt 5.5 |
QChar::Script_OldPersian |
60 |
|
QChar::Script_OldSogdian |
147 |
С Qt 5.15 |
QChar::Script_OldSouthArabian |
88 |
|
QChar::Script_OldTurkic |
91 |
|
QChar::Script_Oriya |
15 |
|
QChar::Script_Osage |
136 |
С Qt 5.11 |
QChar::Script_Osmanya |
52 |
|
QChar::Script_PahawhHmong |
108 |
С Qt 5.5 |
QChar::Script_Palmyrene |
118 |
С Qt 5.5 |
QChar::Script_PauCinHau |
119 |
С Qt 5.5 |
QChar::Script_PhagsPa |
65 |
|
QChar::Script_Phoenician |
64 |
|
QChar::Script_PsalterPahlavi |
121 |
С Qt 5.5 |
QChar::Script_Rejang |
73 |
|
QChar::Script_Runic |
31 |
|
QChar::Script_Samaritan |
82 |
|
QChar::Script_Saurashtra |
71 |
|
QChar::Script_Sharada |
100 |
|
QChar::Script_Shavian |
51 |
|
QChar::Script_Siddham |
122 |
С Qt 5.5 |
QChar::Script_SignWriting |
131 |
С Qt 5.6 |
QChar::Script_Sinhala |
20 |
|
QChar::Script_Sogdian |
148 |
С Qt 5.15 |
QChar::Script_SoraSompeng |
101 |
|
QChar::Script_Soyombo |
140 |
С Qt 5.11 |
QChar::Script_Sundanese |
67 |
|
QChar::Script_SylotiNagri |
59 |
|
QChar::Script_Syriac |
9 |
|
QChar::Script_Tagalog |
42 |
|
QChar::Script_Tagbanwa |
45 |
|
QChar::Script_TaiLe |
48 |
|
QChar::Script_TaiTham |
78 |
|
QChar::Script_TaiViet |
79 |
|
QChar::Script_Takri |
102 |
|
QChar::Script_Tamil |
16 |
|
QChar::Script_Tangut |
137 |
С Qt 5.11 |
QChar::Script_Telugu |
17 |
|
QChar::Script_Thaana |
10 |
|
QChar::Script_Thai |
21 |
|
QChar::Script_Tibetan |
23 |
|
QChar::Script_Tifinagh |
58 |
QChar::Script_Tirhuta |
124 |
С Qt 5.5 |
QChar::Script_Ugaritic |
50 |
|
QChar::Script_Vai |
70 |
|
QChar::Script_Wancho |
152 |
С Qt 5.15 |
QChar::Script_WarangCiti |
125 |
С Qt 5.5 |
QChar::Script_Yezidi |
156 |
С Qt 5.15 |
QChar::Script_Yi |
38 |
|
QChar::Script_ZanabazarSquare |
141 |
С Qt 5.11 |
Этот перечисление был введен или изменен в Qt 5.1.
См. такжеscript().
enum QChar::SpecialCharacter
| Постоянная | Значение | Описание |
|---|---|---|
QChar::Null |
0x0000 |
QChar с этим значением isNull(). |
QChar::Tabulation |
0x0009 |
Табуляция. |
QChar::LineFeed |
0x000a |
|
QChar::FormFeed |
0x000c |
|
QChar::CarriageReturn |
0x000d |
|
QChar::Space |
0x0020 |
|
QChar::Nbsp |
0x00a0 |
Неразрывный пробел. |
QChar::SoftHyphen |
0x00ad |
|
QChar::ReplacementCharacter |
0xfffd |
Символ, отображаемый, когда шрифт не имеет глифа для определенного кодового пункта. Часто используется специальный знак вопроса. Кодеки используют этот кодовый пункт, когда входные данные не могут быть представлены в Unicode. |
QChar::ObjectReplacementCharacter |
0xfffc |
Используется для представления объекта, такого как изображение, когда такие объекты не могут быть представлены. |
QChar::ByteOrderMark |
0xfeff |
|
QChar::ByteOrderSwapped |
0xfffe |
|
QChar::ParagraphSeparator |
0x2029 |
|
QChar::LineSeparator |
0x2028 |
|
QChar::LastValidCodePoint |
0x10ffff |
enum QChar::UnicodeVersion
Указывает, какая версия стандарта Unicode ввела определенный символ.
| Постоянная | Значение | Описание |
|---|---|---|
QChar::Unicode_1_1 |
1 |
Версия 1.1 |
QChar::Unicode_2_0 |
2 |
Версия 2.0 |
QChar::Unicode_2_1_2 |
3 |
Версия 2.1.2 |
QChar::Unicode_3_0 |
4 |
Версия 3.0 |
QChar::Unicode_3_1 |
5 |
Версия 3.1 |
QChar::Unicode_3_2 |
6 |
Версия 3.2 |
QChar::Unicode_4_0 |
7 |
Версия 4.0 |
QChar::Unicode_4_1 |
8 |
Версия 4.1 |
QChar::Unicode_5_0 |
9 |
Версия 5.0 |
QChar::Unicode_5_1 |
10 |
Версия 5.1 |
QChar::Unicode_5_2 |
11 |
Версия 5.2 |
QChar::Unicode_6_0 |
12 |
Версия 6.0 |
QChar::Unicode_6_1 |
13 |
Версия 6.1 |
QChar::Unicode_6_2 |
14 |
Версия 6.2 |
QChar::Unicode_6_3 |
15 |
Версия 6.3 С Qt 5.3 |
QChar::Unicode_7_0 |
16 |
Версия 7.0 С Qt 5.5 |
QChar::Unicode_8_0 |
17 |
Версия 8.0 С Qt 5.6 |
QChar::Unicode_9_0 |
18 |
Версия 9.0 С Qt 5.11 |
QChar::Unicode_10_0 |
19 |
Версия 10.0 С Qt 5.11 |
QChar::Unicode_11_0 |
20 |
Версия 11.0 С Qt 5.15 |
QChar::Unicode_12_0 |
21 |
Версия 12.0 С Qt 5.15 |
QChar::Unicode_12_1 |
22 |
Версия 12.1 С Qt 5.15 |
QChar::Unicode_13_0 |
23 |
Версия 13.0 С Qt 5.15 |
QChar::Unicode_Unassigned |
0 |
Значение не присвоено ни одному символу в версии 8.0 Unicode. |
См. такжеunicodeVersion() и currentUnicodeVersion().
Документация функций-членов
QChar::QChar(uchar ch)
Конструирует QChar, соответствующий символу ASCII/Latin-1 ch.
Примечание: Этот конструктор недоступен, когда определено QT_NO_CAST_FROM_ASCII или QT_RESTRICTED_CAST_FROM_ASCII.
См. такжеQT_NO_CAST_FROM_ASCII и QT_RESTRICTED_CAST_FROM_ASCII.
QChar::QChar(char ch)
Конструирует QChar, соответствующий символу ASCII/Latin-1 ch.
Примечание: Этот конструктор недоступен, когда определено QT_NO_CAST_FROM_ASCII.
См. такжеQT_NO_CAST_FROM_ASCII.
QChar::QChar(wchar_t ch)
Конструирует QChar, соответствующий широкому символу ch.
Примечание: Этот конструктор доступен только в Windows.
Эта функция была введена в Qt 5.10.
QChar::QChar(char16_t ch)
Конструирует QChar, соответствующий UTF-16 символу ch.
Эта функция была введена в Qt 5.10.
QChar::QChar(QLatin1Char ch)
Конструирует QChar, соответствующий символу ASCII/Latin-1 ch.
QChar::QChar(QChar::SpecialCharacter ch)
Конструирует QChar для предварительно определенного символа со значением ch.
QChar::QChar(int code)
Конструирует QChar для символа с кодовым значением Unicode code.
QChar::QChar(uint code)
Конструирует QChar для символа с кодовым значением Unicode code.
QChar::QChar(short code)
Конструирует QChar для символа с кодовым значением Unicode code.
QChar::QChar(uchar cell, uchar row)
Конструирует QChar для ячейки Unicode cell в строке row.
END_OF_DOCUMENT_MARKERQChar::QChar(ushort code)
Создаёт QChar для символа с кодом Юникода code.
QChar::QChar()
Создаёт пустой QChar ('\0').
См. также isNull().
QChar::Category QChar::category() const
Возвращает категорию символа.
[static] QChar::Category QChar::category(uint ucs4)
Это перегруженный метод.
Возвращает категорию символа UCS-4, заданного значением ucs4.
uchar QChar::cell() const
Возвращает ячейку (самый младший байт) символа Юникода.
См. также row().
unsigned char QChar::combiningClass() const
Возвращает класс объединения символа, как определено в стандарте Юникод. Это в основном используется как подсказка для позиционирования знаков, прикреплённых к основному символу.
Движок Qt для обработки текста использует эту информацию для правильного позиционирования знаков без пробела вокруг основного символа.
[static] unsigned char QChar::combiningClass(uint ucs4)
Это перегруженный метод.
Возвращает класс объединения символа UCS-4, заданного значением ucs4, как определено в стандарте Юникод.
[static] QChar::UnicodeVersion QChar::currentUnicodeVersion()
Возвращает последнюю поддерживаемую версию Юникода.
QString QChar::decomposition() const
Разлагает символ на его составные части. Возвращает пустую строку, если разложения не существует.
[static] QString QChar::decomposition(uint ucs4)
Это перегруженный метод.
Разлагает символ UCS-4, заданный значением ucs4, на его составные части. Возвращает пустую строку, если разложения не существует.
QChar::Decomposition QChar::decompositionTag() const
Возвращает тег, определяющий состав символа. Возвращает QChar::NoDecomposition, если разложения не существует.
[static] QChar::Decomposition QChar::decompositionTag(uint ucs4)
Это перегруженный метод.
Возвращает тег, определяющий состав символа UCS-4, заданного значением ucs4. Возвращает QChar::NoDecomposition, если разложения не существует.
int QChar::digitValue() const
Возвращает числовое значение цифры или -1, если символ не является цифрой.
[static] int QChar::digitValue(uint ucs4)
Это перегруженный метод.
Возвращает числовое значение цифры, заданной символом UCS-4, ucs4, или -1, если символ не является цифрой.
QChar::Direction QChar::direction() const
Возвращает направление символа.
[static] QChar::Direction QChar::direction(uint ucs4)
Это перегруженный метод.
Возвращает направление символа UCS-4, заданного значением ucs4.
[static] QChar QChar::fromLatin1(char c)
Преобразует символ Latin-1 c в эквивалентный QChar. Это в основном полезно для программного обеспечения, не ориентированного на международные стандарты.
Альтернатива — использование QLatin1Char.
См. также toLatin1() и unicode().
bool QChar::hasMirrored() const
Возвращает true , если символ должен быть перевёрнут, если направление текста изменено; в противном случае возвращает false.
Более быстрый эквивалент (ch.mirroredChar() != ch).
См. также mirroredChar().
[static] bool QChar::hasMirrored(uint ucs4)
Это перегруженный метод.
Возвращает true , если символ UCS-4, заданный значением ucs4, должен быть перевёрнут, если направление текста изменено; в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
См. также mirroredChar().
[static] ushort QChar::highSurrogate(uint ucs4)
Возвращает старшую суррогатную часть кода точки UCS-4. Результат неопределён, если ucs4 меньше 0x10000.
bool QChar::isDigit() const
Возвращает true , если символ является десятичной цифрой (Number_DecimalDigit); в противном случае возвращает false.
См. также isNumber().
[static] bool QChar::isDigit(uint ucs4)
Это перегруженный метод.
Возвращает true , если символ UCS-4, заданный значением ucs4, является десятичной цифрой (Number_DecimalDigit); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
См. также isNumber().
bool QChar::isHighSurrogate() const
Возвращает true , если QChar является старшей частью суррогата UTF16 (например, если его код находится в диапазоне [0xd800..0xdbff]); в противном случае — false.
[static] bool QChar::isHighSurrogate(uint ucs4)
Это перегруженный метод.
Возвращает true , если символ UCS-4, заданный значением ucs4, является старшей частью суррогата UTF16 (например, если его код находится в диапазоне [0xd800..0xdbff]); в противном случае — false.
bool QChar::isLetter() const
Возвращает true , если символ является буквой (категории Letter_*); в противном случае возвращает false.
[static] bool QChar::isLetter(uint ucs4)
Это перегруженный метод.
Возвращает true , если символ UCS-4, заданный значением ucs4, является буквой (категории Letter_*); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
bool QChar::isLetterOrNumber() const
Возвращает true , если символ является буквой или цифрой (категории Letter_* или Number_*); в противном случае возвращает false.
[static] bool QChar::isLetterOrNumber(uint ucs4)
Это перегруженный метод.
Возвращает true , если символ UCS-4, заданный значением ucs4, является буквой или цифрой (категории Letter_* или Number_*); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
bool QChar::isLowSurrogate() const
Возвращает true , если QChar является младшей частью суррогата UTF16 (например, если его код находится в диапазоне [0xdc00..0xdfff]); в противном случае — false.
[static] bool QChar::isLowSurrogate(uint ucs4)
Это перегруженный метод.
Возвращает true , если символ UCS-4, заданный значением ucs4, является младшей частью суррогата UTF16 (например, если его код находится в диапазоне [0xdc00..0xdfff]); в противном случае — false.
bool QChar::isLower() const
Возвращает true , если символ является строчной буквой, например, category() является Letter_Lowercase.
См. также isUpper(), toLower() и toUpper().
[static] bool QChar::isLower(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является строчной буквой, например, category() — Letter_Lowercase.
Этот метод был добавлен в Qt 5.0.
См. также isUpper(), toLower() и toUpper().
bool QChar::isMark() const
Возвращает true, если символ является диакритическим знаком (категории Mark_*); в противном случае возвращает false.
См. QChar::Category для получения дополнительной информации о диакритическом знаке.
[static] bool QChar::isMark(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является диакритическим знаком (категории Mark_*); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
bool QChar::isNonCharacter() const
Возвращает true, если QChar — недопустимый символ; в противном случае возвращает false.
В Unicode существует определённое количество кодовых точек, классифицированных как «недопустимые символы». Их можно использовать во внутренних целях приложения, но нельзя использовать для обмена текстом. Это последние две записи в каждом плане Unicode ([0xfffe..0xffff], [0x1fffe..0x1ffff] и т. д.), а также записи в диапазоне [0xfdd0..0xfdef].
Этот метод был добавлен в Qt 5.0.
[static] bool QChar::isNonCharacter(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является недопустимым символом; в противном случае возвращает false.
В Unicode существует определённое количество кодовых точек, классифицированных как «недопустимые символы». Их можно использовать во внутренних целях приложения, но нельзя использовать для обмена текстом. Это последние две записи в каждом плане Unicode ([0xfffe..0xffff], [0x1fffe..0x1ffff] и т. д.), а также записи в диапазоне [0xfdd0..0xfdef].
Этот метод был добавлен в Qt 5.0.
bool QChar::isNull() const
Возвращает true, если символ — это символ Unicode 0x0000 ('\0'); в противном случае возвращает false.
bool QChar::isNumber() const
Возвращает true, если символ является числом (категории Number_*, а не только 0-9); в противном случае возвращает false.
См. также isDigit().
[static] bool QChar::isNumber(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является числом (категории Number_*, а не только 0-9); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
См. также isDigit().
bool QChar::isPrint() const
Возвращает true, если символ — печатный символ; в противном случае возвращает false. Это любой символ, не относящийся к категории Other_*.
Обратите внимание, что это не означает, что символ доступен в конкретном шрифте.
[static] bool QChar::isPrint(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, — печатный символ; в противном случае возвращает false. Это любой символ, не относящийся к категории Other_*.
Обратите внимание, что это не означает, что символ доступен в конкретном шрифте.
Этот метод был добавлен в Qt 5.0.
bool QChar::isPunct() const
Возвращает true, если символ является знаком препинания (категории Punctuation_*); в противном случае возвращает false.
[static] bool QChar::isPunct(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является знаком препинания (категории Punctuation_*); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
bool QChar::isSpace() const
Возвращает true, если символ является разделителем (категории Separator_* или определённые кодовые точки из категории Other_Control); в противном случае возвращает false.
[static] bool QChar::isSpace(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является разделителем (категории Separator_* или определённые кодовые точки из категории Other_Control); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
bool QChar::isSurrogate() const
Возвращает true, если QChar содержит кодовую точку, находящуюся в верхней или нижней части диапазона суррогатов UTF-16 (например, если её кодовая точка находится в диапазоне [0xd800..0xdfff]); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
[static] bool QChar::isSurrogate(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, содержит кодовую точку, находящуюся в верхней или нижней части диапазона суррогатов UTF-16 (например, если её кодовая точка находится в диапазоне [0xd800..0xdfff]); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
bool QChar::isSymbol() const
Возвращает true, если символ является символом (категории Symbol_*); в противном случае возвращает false.
[static] bool QChar::isSymbol(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является символом (категории Symbol_*); в противном случае возвращает false.
Этот метод был добавлен в Qt 5.0.
bool QChar::isTitleCase() const
Возвращает true, если символ является заглавной буквой, например, category() — Letter_Titlecase.
См. также isLower(), toUpper(), toLower() и toTitleCase().
[static] bool QChar::isTitleCase(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является заглавной буквой, например, category() — Letter_Titlecase.
Этот метод был добавлен в Qt 5.0.
См. также isLower(), toUpper(), toLower() и toTitleCase().
bool QChar::isUpper() const
Возвращает true, если символ — заглавная буква, например, category() — Letter_Uppercase.
См. также isLower(), toUpper() и toLower().
[static] bool QChar::isUpper(uint ucs4)
Это перегруженный метод.
Возвращает true, если символ, закодированный в UCS-4, указанный параметром ucs4, является заглавной буквой, например, category() — Letter_Uppercase.
Этот метод был добавлен в Qt 5.0.
См. также isLower(), toUpper() и toLower().
QChar::JoiningType QChar::joiningType() const
Возвращает информацию о типах объединения символа (необходима для некоторых языков, таких как арабский или сирийский).
Этот метод был добавлен в Qt 5.3.
[static] QChar::JoiningType QChar::joiningType(uint ucs4)
Это перегруженный метод.
Возвращает информацию о типах объединения символа, закодированного в UCS-4, указанного параметром ucs4 (необходима для некоторых языков, таких как арабский или сирийский).
Этот метод был добавлен в Qt 5.3.
[static] ushort QChar::lowSurrogate(uint ucs4)
Возвращает низкую часть суррогата UCS-4 кодовой точки. Результат является неопределённым, если ucs4 меньше 0x10000.
QChar QChar::mirroredChar() const
Возвращает зеркальное изображение символа, если этот символ является зеркальным; в противном случае возвращает сам символ.
См. также hasMirrored().
[static] uint QChar::mirroredChar(uint ucs4)
Это перегруженная функция.
Возвращает зеркальное изображение символа, если символ UCS-4, заданный ucs4, является зеркальным; в противном случае возвращает сам символ.
См. также hasMirrored().
[static] bool QChar::requiresSurrogates(uint ucs4)
Возвращает true, если символ UCS-4, заданный ucs4, может быть разделен на верхнюю и нижнюю части суррогата UTF16 (например, если его кодовая точка больше или равна 0x10000); в противном случае возвращает false.
uchar QChar::row() const
Возвращает строку (самый значимый байт) символа Юникода.
См. также cell().
QChar::Script QChar::script() const
Возвращает значение свойства шрифта Юникода для этого символа.
Эта функция была добавлена в Qt 5.1.
[static] QChar::Script QChar::script(uint ucs4)
Это перегруженная функция.
Возвращает значение свойства шрифта Юникода для символа, заданного в виде UCS-4 кодовой точки ucs4.
Эта функция была добавлена в Qt 5.1.
[static] uint QChar::surrogateToUcs4(ushort high, ushort low)
Преобразует пару суррогатов UTF16 с заданными значениями high и low в его кодовую точку UCS-4.
[static] uint QChar::surrogateToUcs4(QChar high, QChar low)
Это перегруженная функция.
Преобразует пару суррогатов UTF16 (high, low) в его кодовую точку UCS-4.
QChar QChar::toCaseFolded() const
Возвращает эквивалент символа в нижнем регистре с учётом регистровой раскладки. Для большинства символов Юникода это то же самое, что и toLower().
[static] uint QChar::toCaseFolded(uint ucs4)
Это перегруженная функция.
Возвращает эквивалент символа в нижнем регистре с учётом регистровой раскладки для символа UCS-4, заданного ucs4. Для большинства символов Юникода это то же самое, что и toLower().
char QChar::toLatin1() const
Возвращает эквивалент символа в Latin-1, или 0. Это полезно в основном для программного обеспечения, не поддерживающего международные символы.
Примечание: Невозможно отличить символ, не являющийся Latin-1, от символа Latin-1 0 (NUL). Предпочтительно использовать unicode(), которое не имеет этой неоднозначности.
См. также unicode().
QChar QChar::toLower() const
Возвращает эквивалент в нижнем регистре, если символ является заглавным или строчным; в противном случае возвращает сам символ.
[static] uint QChar::toLower(uint ucs4)
Это перегруженная функция.
Возвращает эквивалент в нижнем регистре символа UCS-4, заданного ucs4, если символ является заглавным или строчным; в противном случае возвращает сам символ.
QChar QChar::toTitleCase() const
Возвращает эквивалент в строчном регистре, если символ является строчным или заглавным; в противном случае возвращает сам символ.
[static] uint QChar::toTitleCase(uint ucs4)
Это перегруженная функция.
Возвращает эквивалент в строчном регистре символа UCS-4, заданного ucs4, если символ является строчным или заглавным; в противном случае возвращает сам символ.
QChar QChar::toUpper() const
Возвращает эквивалент в верхнем регистре, если символ является строчным или строчным; в противном случае возвращает сам символ.
[static] uint QChar::toUpper(uint ucs4)
Это перегруженная функция.
Возвращает эквивалент в верхнем регистре символа UCS-4, заданного ucs4, если символ является строчным или строчным; в противном случае возвращает сам символ.
ushort QChar::unicode() const
Возвращает числовое значение Юникода символа QChar.
ushort &QChar::unicode()
Возвращает ссылку на числовое значение Юникода символа QChar.
QChar::UnicodeVersion QChar::unicodeVersion() const
Возвращает версию Юникода, которая ввела этот символ.
[static] QChar::UnicodeVersion QChar::unicodeVersion(uint ucs4)
Это перегруженная функция.
Возвращает версию Юникода, которая ввела символ, заданный в виде UCS-4 кодовой точки ucs4.
Связанные нечленные функции
bool operator!=(QChar c1, QChar c2)
Возвращает true, если c1 и c2 не являются одним и тем же символом Юникода; в противном случае возвращает false.
bool operator<(QChar c1, QChar c2)
Возвращает true, если числовое значение Юникода c1 меньше, чем c2; в противном случае возвращает false.
QDataStream &operator<<(QDataStream &out, QChar chr)
Записывает символ chr в поток out.
См. также Сериализация типов данных Qt.
bool operator<=(QChar c1, QChar c2)
Возвращает true, если числовое значение Юникода c1 меньше или равно c2; в противном случае возвращает false.
bool operator==(QChar c1, QChar c2)
Возвращает true, если c1 и c2 являются одним и тем же символом Юникода; в противном случае возвращает false.
bool operator>(QChar c1, QChar c2)
Возвращает true, если числовое значение Юникода c1 больше, чем c2; в противном случае возвращает false.
bool operator>=(QChar c1, QChar c2)
Возвращает true, если числовое значение Юникода c1 больше или равно c2; в противном случае возвращает false.
QDataStream &operator>>(QDataStream &in, QChar &chr)
Читает символ из потока in в символ chr.
См. также Сериализация типов данных Qt.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qchar.html