更改从.rtf文件

时间:2015-10-07 11:01:51

标签: ios objective-c cocoa rtf nsattributedstring

我正在使用UITextView从rtf文件中设置attributedText来显示T& C,隐私页面等。

rtf文件已经格式化,因此它包含不同大小的标题,段落等。有没有办法说出类似"使字体大小比较大3pt"?当然,我不会为文件中的每个句子和标题指定字符范围,并手动设置字体大小。

这就是我正在做的事情:

@implementation RTFViewController

- (instancetype)initWithRTFURL:(NSURL *)url title:(NSString *)title {
    self = [super init];

    if (self) {
        self.navigationItem.title = title;
        self.text = [[NSAttributedString alloc] initWithFileURL:url
                                                        options:@{NSDocumentTypeDocumentAttribute:NSRTFTextDocumentType}
                                             documentAttributes:nil
                                                          error:nil];
    }

    return self;
}

- (void)viewDidLoad {
    [super viewDidLoad];

    self.textView = [UITextView newAutoLayoutView];
    self.textView.editable = NO;
    self.textView.textContainerInset = UIEdgeInsetsMake(20.0f, 20.0f, 20.0f, 20.0f);
    self.textView.dataDetectorTypes = UIDataDetectorTypeAll;

    self.textView.attributedText = self.text;
    [self.view addSubview:self.textView];
}

@end

修改

我可以通过循环字符串并将字体设置为原始字体大小的倍数来实现我想要的效果,如下所述:https://stackoverflow.com/a/19387401/2026098

有一个更简洁的解决方案仍然会很好,一个不会依次查看每个角色的解决方案。

0 个答案:

没有答案