NSParagraphStyle和NSMutableParagraphStyle中文API
NSParagraphStyle
//這類方法返回一個快取共享和NSParagraphStyle例項使用預設風格設定,與[[NSParagraphStyle alloc]init]有相同值的結果。+ (NSParagraphStyle *)defaultParagraphStyle;
//書寫方向,languageName在ISO書寫格式
+ (NSWritingDirection)defaultWritingDirectionForLanguage:(nullable NSString *)languageName;
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat lineSpacing;//行間距
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat paragraphSpacing;//段落間距
@property(readonly, NS_NONATOMIC_IOSONLY) NSTextAlignment alignment;//文字對齊方式
//以下的值對於適當的邊界是相對的(取決於段落方向)
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat headIndent;//頭縮排(除了每段首行)
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat tailIndent;//尾縮排(除了每段首行)
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat firstLineHeadIndent;//首行縮排
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat minimumLineHeight;//最小行高,不包括lineSpacing(新增後計算)。
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat maximumLineHeight;//最大行高,0意味著沒有最大值。
@property(readonly, NS_NONATOMIC_IOSONLY) NSLineBreakMode lineBreakMode;//換行方式
// NSParagraphStyle
typedef NS_ENUM(NSInteger, NSLineBreakMode) {
NSLineBreakByWordWrapping = 0, // 以單詞截斷,預設方式
NSLineBreakByCharWrapping, // 以字母截斷
NSLineBreakByClipping, // 簡單截斷
NSLineBreakByTruncatingHead, // 省略頭部: "...wxyz"
NSLineBreakByTruncatingTail, // 省略尾部: "abcd..."
NSLineBreakByTruncatingMiddle // 省略中間: "ab...yz"
} NS_ENUM_AVAILABLE(10_0, 6_0);
@property(readonly, NS_NONATOMIC_IOSONLY) NSWritingDirection baseWritingDirection;//書寫方向
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat lineHeightMultiple;//自然行乘以這個引數,在被最大行高和最小行高約束之前
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat paragraphSpacingBefore;//段落底部與這段頂端的距離
//指定連字元。有效值在0.0和1.0之間。斷字將嘗試當文字寬度的比值作為打破沒有斷字線片段的寬度小於斷字的因素。這需要在其預設值為0.0,佈局管理器的使用而不是用連字元號連線因素。當兩者都是0.0,斷字是禁用的。
@property(readonly, NS_NONATOMIC_IOSONLY) float hyphenationFactor;
@property(readonly,copy, NS_NONATOMIC_IOSONLY) NSArray<NSTextTab *> *tabStops NS_AVAILABLE(10_0, 7_0);//一個NSTextTabs陣列。內容應該下令位置。預設值是一個數組的12左對齊製表符28 pt間隔
@property(readonly, NS_NONATOMIC_IOSONLY) CGFloat defaultTabInterval NS_AVAILABLE(10_0, 7_0);//間隔預設選項卡用於位置之外的最後一個元素在製表符
@property(readonly, NS_NONATOMIC_IOSONLY) BOOL allowsDefaultTighteningForTruncation NS_AVAILABLE(10_11, 9_0);//收緊inter-character間距在嘗試適應更廣泛的比可用空間如果換行模式是一種截斷模式之前開始截斷。預設情況下沒有。緊縮的最大數量是由執行系統基於上下文,如字型、線條寬度等。