标签结构
struct QFont::TagQFont::Tag 类型提供访问高级字体功能的方法。 更多...
此结构在 Qt 6.7 中引入。
公共函数
静态公共成员
std::optional<QFont::Tag> | fromString(QAnyStringView view) |
std::optional<QFont::Tag> | fromValue(quint32 value) |
相关非成员
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) |
详细描述
QFont 在对文本进行形状处理时提供访问高级功能的方法。一个功能由一个标签定义,该标签可以表示为四个字符的字符串,或为32位整数值。此类型以类型安全的方式表示此类标签。可以从四个字符的、8位字符串文字或相应的32位整数值构造它。使用较短的或较长的字符串文字将导致编译时错误。
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);
命名构造函数允许从32位整数或字符串值创建一个标签,并在输入无效时返回一个 std::nullopt
。
另请参阅QFont::setFeature() 和 QFont::featureTags。
成员函数文档
[constexpr noexcept]
Tag::Tag()
默认构造函数,生成一个无效的标签。
[constexpr noexcept]
模板 <size_t N> Tag::Tag(const char (&)[N] str)
从一个字符串文字 str 中构造一个标签。文字必须正好有四个字符长。
font.setFeature("frac", 1);
另请参阅fromString() 和 fromValue。
[static noexcept]
std::optional<QFont::Tag> Tag::fromString(QAnyStringView view)
从view中的字符串构造一个标记。字符串长度必须正好是四个字符。
如果输入长度不是四个字符,或者生成的标记无效,则返回std::nullopt
。
[static constexpr noexcept]
std::optional<QFont::Tag> Tag::fromValue(quint32 value)
从value构造标记,或如果生成的标记无效,则返回std::nullopt
。
另请参阅isValid。
[constexpr noexcept]
bool Tag::isValid() const
返回标记是否有效。如果标记的值不为零,则标记有效。
另请参阅value()、fromValue() 和 fromString()。
QByteArray Tag::toString() const
以字节数组形式返回此标记的字符串表示。
另请参阅fromString。
[constexpr noexcept]
quint32 Tag::value() const
返回此标记的数值。
相关非成员
[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)
比较lhs与rhs是否相等及排序。
[constexpr noexcept]
size_t qHash(QFont::Tag key, size_t seed = 0)
返回key的散列值,使用seed来初始化计算。
© 2024 Qt公司有限公司。本文档中的文档贡献是各自所有者的版权。提供的文档是根据自由软件基金会发布的GNU自由文档许可证版本1.3的条款许可的。Qt和相应的徽标是芬兰和/或全球其他国家的Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。