我有一个NSAttributedString,我要向其中添加NSTextAttachment。图像是50w x 50h,但我希望它按比例缩小以反射(reflect)属性字符串的行高。我以为这会自动完成,但我想不会。我看过UImage类引用,但是此图像似乎未在UIImageView中设置,因此无法访问frame属性。这是我目前拥有的屏幕截图:
在理想的世界中,我还想实现一种基于用户输入(例如,增大字体大小)按比例放大图像的方法。关于如何实现这一目标的任何想法?
谢谢
编辑1
这是我的创建方式:
NSTextAttachment *textAttachment = [[NSTextAttachment alloc] init];
textAttachment.image = [UIImage imageNamed:@"note-small.png"];
NSLog(@"here is the scale: %f", textAttachment.image.scale);
NSAttributedString *attrStringWithImage = [NSAttributedString attributedStringWithAttachment:textAttachment];
[headerAS replaceCharactersInRange:NSMakeRange([headerAS length], 0) withString:@" "];
[headerAS replaceCharactersInRange:NSMakeRange([headerAS length], 0) withAttributedString:attrStringWithImage];
最佳答案
查看子类NSTextAttachment
并实现NSTextAttachmentContainer
方法以根据提供的文本容器返回不同的大小。默认情况下,NSTextAttachment
仅返回提供的图像的大小。