gpt4 book ai didi

ios - 获取内容大小类别的 UIFont

转载 作者:行者123 更新时间:2023-12-01 21:51:09 29 4
gpt4 key购买 nike

UIFont 提供 +preferredFontForTextStyle:方法根据用户选择的内容大小类别和给定的 UIFontTextStyle 获取具有适当大小的字体实例。 .

我想做的是获取给定文本样式内容大小的字体。类似于 +fontForContentSizeCategory:andTextStyle:

不幸的是,我在 UIFont 的标题中找不到类似的内容。或UIFontDescriptor .

知道如何实现这一目标吗?

谢谢

最佳答案

不幸的是,+[UIFont PreferredFontForTextStyle:]+[UIFontDescriptor PreferredFontDescriptorWithTextStyle:]在内部都依赖于-[UIApplication PreferredContentSizeCategory]。他们使用私有(private)函数_CTFontDescriptorCreateWithTextStyle来检索具有特定文本样式和尺寸类别的CoreText字体描述符,并且最终基于配置文件CoreTextConfig.plist中的类别→尺寸映射> 存储在某处,但我假设您不想使用私有(private) API。

虽然犹豫地暗示可以动态调配 -[UIApplication PreferredContentSizeCategory] 来欺骗 +[UIFontDescriptor PreferredFontDescriptorWithTextStyle:] 返回您想要的尺寸类别的字体描述符,我不能推荐任何具体的方法。您可以像这样检索字体描述符:

let descriptor = UIFontDescriptor(fontAttributes: [ UIFontDescriptorTextStyleAttribute : UIFontTextStyleBody ])

但它不会包含尺寸属性,因此您将不得不尝试自己提出一个类别→尺寸映射。

关于ios - 获取内容大小类别的 UIFont,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32041048/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com