How to make subscripts and superscripts using NSAttributedString?

前端 未结 5 1307
情书的邮戳
情书的邮戳 2020-11-27 15:40

I need to make subscripts for chemistry formulas (H2O, Na^2+, etc)?

Is this possible to do with NSAttributedString, or is there an alternative/easier way to make sub

5条回答
  •  青春惊慌失措
    2020-11-27 16:16

    For SubScript use value for kCTSuperscriptAttributeName as @-1.

    As per the document

    @discussion Value must be a CFNumberRef. Default is int value 0. If supported by the specified font, a value of 1 enables superscripting and a value of -1 enables subscripting.

    extern const CFStringRef kCTSuperscriptAttributeName CT_AVAILABLE(10_5, 3_2);

     Example- [lblHeader setText:@“Headers [Alpha1 – text”];
    
            NSMutableAttributedString *headerSubscript = [[NSMutableAttributedString alloc]initWithAttributedString: lblHeader.attributedText];
    
            [headerSubscript addAttribute:(NSString *)kCTSuperscriptAttributeName value:@-1 range:NSMakeRange(14,1)];      
    
            [lblHeader setAttributedText:headerSubscript];
    

提交回复
热议问题