简介
使用方法
计算段落高度
相关属性
易优旅游景区景点网站源码是基于易优cms开发,适合做景区景点类网站,程序内核为Thinkphp5.0开发, 后台简洁,为旅游景区景点企业而设计,这是一套安装就能建站的程序,不定期更新程序BUG,更新网站功能。 我们提供的不仅是源码模板这么简单,我们还提供程序相关咨询、协助安装等服务。 默认不包含小程序插件,需要另外单独购买插件。 模板安装步骤: 1、请将安装包
0
alignment - 对齐方式 firstLineHeadIndent - 首行缩进 headIndent - 缩进 tailIndent - 尾部缩进 lineBreakMode - 断行方式 maximumLineHeight - 最大行高 minimumLineHeight - 最低行高 lineSpacing - 行距 paragraphSpacing -段距 paragraphSpacingBefore - 段首空间 baseWritingDirection - 句子方向 lineHeightMultiple - 可变行高乘因数 hyphenationFactor - 连字符属性
NSParagraphStyleAttributeName 用于设置 NSAttributedString,和 NSFontAttributeName 类似。
不同的是:NSParagraphStyleAttributeName 是设置段落风格,NSFontAttributeName是设置字体。
- (void)drawRect:(NSRect)dirtyRect {
[super drawRect:dirtyRect];
NSMutableParagraphStyle *textStyle = [[NSMutableParagraphStyle alloc] init];
[textStyle setAlignment:NSTextAlignmentCenter];
[textStyle setLineBreakMode:NSLineBreakByTruncatingTail];
NSDictionary *attributes = @{NSFontAttributeName: [NSFont systemFontOfSize:18],
NSForegroundColorAttributeName: [NSColor whiteColor],
NSParagraphStyleAttributeName: textStyle};
float w = self.frame.size.width;
float h = self.frame.size.height;
float str_h = 20;
NSAttributedString *attributedText4 = [[NSAttributedString alloc] initWithString:@"这是一个 string" attributes:attributes];
} - (void)countHeight{ NSString *originStr = @"ashdhsaksah 和就会撒大声地哈萨克的";
NSMutableAttributedString *attriStr = [[NSMutableAttributedString alloc] initWithString:originStr];
NSFont *descFont = [NSFont systemFontOfSize:16];
NSMutableParagraphStyle *descStyle = [[NSMutableParagraphStyle alloc]init];
[descStyle setLineSpacing:1];//行间距
CGFloat destinW = 100; CGSize descSize = [originStr boundingRectWithSize:CGSizeMake(destinW, MAXFLOAT)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:@{NSFontAttributeName:descFont,
NSParagraphStyleAttributeName :descStyle}
context:nil].size;
}NSMutableParagraphStyle与NSParagraphStyle包括一下属性
alignment - 对齐方式 firstLineHeadIndent - 首行缩进 headIndent - 缩进 tailIndent - 尾部缩进 lineBreakMode - 断行方式 maximumLineHeight - 最大行高 minimumLineHeight - 最低行高 lineSpacing - 行距 paragraphSpacing -段距 paragraphSpacingBefore - 段首空间 baseWritingDirection - 句子方向 lineHeightMultiple - 可变行高,乘因数。 hyphenationFactor - 连字符属性
(void)setParagraphStyle{
NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];
paragraphStyle.lineSpacing = 20.;// 行间距
paragraphStyle.lineHeightMultiple = 1.5;// 行高倍数(1.5倍行高)
paragraphStyle.firstLineHeadIndent = 30.0f;//首行缩进
paragraphStyle.minimumLineHeight = 10;//最低行高
paragraphStyle.maximumLineHeight = 20;//最大行高(会影响字体)
paragraphStyle.alignment = NSTextAlignmentLeft;// 对齐方式
paragraphStyle.defaultTabInterval = 144;// 默认Tab 宽度
paragraphStyle.headIndent = 20;// 起始 x位置
paragraphStyle.tailIndent = 320;// 结束 x位置(不是右边间距,与inset 不一样)
paragraphStyle.paragraphSpacing = 44.;// 段落间距
paragraphStyle.paragraphSpacingBefore = 44.;// 段落头部空白(实测与上边的没差啊?)
paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;// 分割模式
/*
NSLineBreakByWordWrapping = 0, // Wrap at word boundaries, default
NSLineBreakByCharWrapping, // Wrap at character boundaries
NSLineBreakByClipping, // Simply clip
NSLineBreakByTruncatingHead, // Truncate at head of line: “…wxyz”
NSLineBreakByTruncatingTail, // Truncate at tail of line: “abcd…”
NSLineBreakByTruncatingMiddle // Truncate middle of line: “ab…yz”
*/
paragraphStyle.baseWritingDirection = NSWritingDirectionRightToLeft;// 段落方向
/*
NSWritingDirectionNatural = -1, // Determines direction using the Unicode Bidi Algorithm rules P2 and P3
NSWritingDirectionLeftToRight = 0, // Left to right writing direction
NSWritingDirectionRightToLeft = 1
*/
}以上就是关于MacOS开发-NSParagraphStyle的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号