@implementation NSString (CrStringDrawing)
+- (CGRect)cr_boundingRectWithSize:(CGSize)size
+ font:(UIFont*)font {
+ NSDictionary* attributes = font ? @{NSFontAttributeName: font} : @{};
+ return [self boundingRectWithSize:size
+ options:NSStringDrawingUsesLineFragmentOrigin
+ attributes:attributes
+ context:nil];
+}
+
+- (CGSize)cr_boundingSizeWithSize:(CGSize)size
+ font:(UIFont*)font {
+ return [self cr_boundingRectWithSize:size font:font].size;
+}
+
- (CGSize)cr_pixelAlignedSizeWithFont:(UIFont*)font {
DCHECK(font) << "|font| can not be nil; it is used as a NSDictionary value";
NSDictionary* attributes = @{ NSFontAttributeName : font };