gpt4 book ai didi

iphone - NSMutableAttributedString addAttribute 方法是否保留传入的值?

转载 作者:行者123 更新时间:2023-11-29 05:06:17 26 4
gpt4 key购买 nike

例如以下代码内存安全吗?

NSMutableAttributedString *str = ...;

CTFontRef aFont = CTFontCreateWithName((CFStringRef)fontName, size, NULL);
[str addAttribute:(NSString*)kCTFontAttributeName value:(id)aFont range:range];
CFRelease(aFont);

此外,多次调用 CTFontCreateWithName 是否有效,或者是否应该努力缓存相同字体/大小的 CTFontRef?

最佳答案

我相信将字体对象添加为属性后释放它是安全的。我已经在自己的 Core Text 代码中这样做了,从来没有遇到任何问题。

对于缓存,如果要多次使用字体对象,则保留该字体对象比释放它并重新创建它多次更有意义。不过,这可能是预优化,所以我还不会做出任何有意识的努力。使用您当前的代码对其进行分析,并确定额外的微秒是否值得。

关于iphone - NSMutableAttributedString addAttribute 方法是否保留传入的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5042473/

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