gpt4 book ai didi

html - 如何将粗体和斜体字体应用于 NSAttributedString?

转载 作者:技术小花猫 更新时间:2023-10-29 10:49:15 25 4
gpt4 key购买 nike

我正在尝试将我自己的 HTML 字符串解析为 NSAttributedString,以便在 UITextView 中呈现。

所以,当字符串出现时:

<strong><em>This should be both bold and italic</strong></em>

我想对最终的 NSAttributedString 应用不同的粗体和斜体字体,这样如果用户在编辑过程中从中删除粗体或斜体字体,剩下的字体之一将保持不变。

这是我不想像其他 SO 答案所建议的那样简单地应用单一字体样式(如粗斜体)的主要原因。

最佳答案

这是我查阅不同来源后的答案:

UIFontDescriptor *fontDescriptor = [UIFontDescriptor preferredFontDescriptorWithTextStyle:UIFontTextStyleBody];

UIFontDescriptor *changedFontDescriptor;
NSDictionary *attributes;

uint32_t existingTraitsWithNewTrait = [fontDescriptor symbolicTraits] | UIFontDescriptorTraitBold | UIFontDescriptorTraitItalic;
changedFontDescriptor = [fontDescriptor fontDescriptorWithSymbolicTraits:existingTraitsWithNewTrait];

UIFont *updatedFont = [UIFont fontWithDescriptor:changedFontDescriptor size:0.0];

attributes = @{ NSFontAttributeName : updatedFont };

attributedString = [[NSAttributedString alloc] initWithString:yourString attributes:attributes];

关于html - 如何将粗体和斜体字体应用于 NSAttributedString?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26023027/

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