Tag Struct
struct QFont::TagThe QFont::Tag type provides access to advanced font features. More...
This struct was introduced in Qt 6.7.
Public Functions
Tag() | |
Tag(const char (&)[N] str) | |
bool | isValid() const |
QByteArray | toString() const |
quint32 | value() const |
Static Public Members
std::optional<QFont::Tag> | fromString(QAnyStringView view) |
std::optional<QFont::Tag> | fromValue(quint32 value) |
Related Non-Members
Qt::strong_ordering | compareThreeWay(const QFont::Tag &lhs, const QFont::Tag &rhs) |
bool | comparesEqual(const QFont::Tag &lhs, const QFont::Tag &rhs) |
size_t | qHash(QFont::Tag key, size_t seed = 0) |
Detailed Description
QFont provides access to advanced features when shaping text. A feature is defined by a tag, which can be represented as a four-character string, or as a 32bit integer value. This type represents such a tag in a type-safe way. It can be constructed from a four-character, 8bit string literal, or from a corresponding 32bit integer value. Using a shorter or longer string literal will result in a compile-time error.
QFont font; // Correct font.setFeature("frac"); // Wrong - won't compile font.setFeature("fraction"); // Wrong - will produce runtime warning and fail font.setFeature(u"fraction"_s);
The named constructors allow to create a tag from an 32bit integer or string value, and will return a std::nullopt
when the input is invalid.
See also QFont::setFeature() and QFont::featureTags().
Member Function Documentation
[constexpr noexcept]
Tag::Tag()
Default constructor, producing an invalid tag.
[constexpr noexcept]
template <size_t N> Tag::Tag(const char (&)[N] str)
Constructs a tag from a string literal, str. The literal must be exactly four characters long.
font.setFeature("frac", 1);
See also fromString() and fromValue().
[static noexcept]
std::optional<QFont::Tag> Tag::fromString(QAnyStringView view)
Returns a tag constructed from the string in view. The string must be exactly four characters long.
Returns std::nullopt
if the input is not four characters long, or if the tag produced would be invalid.
See also isValid() and fromValue().
[static constexpr noexcept]
std::optional<QFont::Tag> Tag::fromValue(quint32 value)
Returns a tag constructed from value, or std::nullopt
if the tag produced would be invalid.
See also isValid().
[constexpr noexcept]
bool Tag::isValid() const
Returns whether the tag is valid. A tag is valid if its value is not zero.
See also value(), fromValue(), and fromString().
QByteArray Tag::toString() const
Returns the string representation of this tag as a byte array.
See also fromString().
[constexpr noexcept]
quint32 Tag::value() const
Returns the numerical value of this tag.
Related Non-Members
[constexpr noexcept]
Qt::strong_ordering compareThreeWay(const QFont::Tag &lhs, const QFont::Tag &rhs)
[constexpr noexcept]
bool comparesEqual(const QFont::Tag &lhs, const QFont::Tag &rhs)
Compare lhs with rhs for equality and ordering.
[constexpr noexcept]
size_t qHash(QFont::Tag key, size_t seed = 0)
Returns the hash value for key, using seed to seed the calculation.
© 2024 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.