码迷,mamicode.com
首页 > 其他好文 > 详细

计算字符串绘制所需宽高

时间:2015-08-16 16:29:41      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:

[str boundingRectWithSize: options: attributes: context:];

 

可以用该方法在绘制之前计算需要多大空间。

 

参数

size

宽高限制,用于计算文本绘制时占据的矩形块。

options

文本绘制时的附加选项。

context

context上下文。包括一些信息,例如如何调整字间距以及缩放。最终,该对象包含的信息将用于文本绘制。该参数可为 nil 。

返回值

一个矩形,大小等于文本绘制完将占据的宽和高。

 

 

size 参数是一个constraint ,用于在绘制文本时作为参考。但是,如果绘制完整个文本需要更大的空间,则返回的矩形大小可能比 size 更大。一般,绘制时会采用constraint 提供的宽度,但高度则会根据需要而定。

 

 

NSStringDrawingOptions

文本绘制选项。

enum {

   NSStringDrawingTruncatesLastVisibleLine= 1 << 5,

   NSStringDrawingUsesLineFragmentOrigin= 1 << 0,

   NSStringDrawingUsesFontLeading= 1 << 1,

   NSStringDrawingUsesDeviceMetrics= 1 << 3,

};

typedef NSInteger NSStringDrawingOptions;

 

常量

 

NSStringDrawingTruncatesLastVisibleLine

如果文本内容超出指定的矩形限制,文本将被截去并在最后一个字符后加上省略号。如果指定了NSStringDrawingUsesLineFragmentOrigin选项,则该选项被忽略。(Truncate:截取、删节)

 

 

NSStringDrawingUsesLineFragmentOrigin

绘制文本时使用 line fragement origin 而不是 baseline origin。(整个文本将以每行组成的矩形为单位计算整个文本的尺寸。)

(fragement:断裂、拆分、破裂;碎片,片段;)

 

NSStringDrawingUsesFontLeading

计算行高时使用行间距。(字体大小+行间距=行高)

 

 

NSStringDrawingUsesDeviceMetrics

计算布局时使用图元字形(而不是印刷字体)。

计算字符串绘制所需宽高

标签:

原文地址:http://www.cnblogs.com/fuunnyy/p/4734358.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!