iOS 根据字符串样式、字符串长度计算字符串所占大小

通过Category为NSString添加方法:

1. 根据字符串样式、字符串长度计算字符串所占大小

/** *  @param font     字符串样式 *  @param maxWidth 指定字符串长度 */- (CGSize)sizeWithFont:(UIFont *)font maxWidth:(CGFloat)maxWidth
{
    // 获取文字样式
    NSMutableDictionary *attrs = [NSMutableDictionary dictionary];
    attrs[NSFontAttributeName] = font;

    // 根据文字样式计算文字所占大小
    // 文本最大宽度
    CGSize maxSize = CGSizeMake(maxWidth, MAXFLOAT);

    // NSStringDrawingUsesLineFragmentOrigin -> 从头开始
    return [self boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:attrs context:nil].size;
}

2. 根据字符串样式计算字符串所占大小

/** *  @param font 字符串样式 */- (CGSize)sizeWithFont:(UIFont *)font
{
    return [self sizeWithFont:font maxWidth:MAXFLOAT];
}
时间: 2024-08-01 14:20:50

iOS 根据字符串样式、字符串长度计算字符串所占大小的相关文章

PHP-根据字符串和所用字体计算字符串所占宽高

今天由于用GD画图, 需要把一段文字在一个框内居中, 但是文字的宽度如果用strlen($str) * $font_size来计算的话, 由于文字不是等宽高的, 所以会导致偏离, 最后选用的GD库的imagettfbbox()函数, 其原型如下 array ImageTTFBBox(int size, int angle, string fontfile, string text); 其中返回一个数组, 有八个元素, 描述了四个角的坐标 0     左下角 X 位置 1     左下角 Y 位置

iOS 对两个相等长度的字符串进行异或运算

+ (NSString *)pinxCreator:(NSString *)pan withPinv:(NSString *)pinv { if (pan.length != pinv.length) { return nil; } const char *panchar = [pan UTF8String]; const char *pinvchar = [pinv UTF8String]; NSString *temp = [[NSString alloc] init]; for (int

Java 按字节计算字符串的长度

在<从后向前截取指定长度的字符串>中介绍了如何截取字符串,本文介绍如何统计字符串的字节长度. import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.UnsupportedEncodingException; public class GetLength { private static final Logger logger = LoggerFactory.getLogger(GetLength.clas

【编程题目】对称子字符串的最大长度 ★

73.对称字符串的最大长度(字符串).题目:输入一个字符串,输出该字符串中对称的子字符串的最大长度.比如输入字符串“google”,由于该字符串里最长的对称子字符串是“goog”,因此输出 4. 虽然知道会有简单的方法,可脑子就是转不动了,只好用最常见的,对所有可能的字符串判断是否为对称的.再输出最大长度 O(N3) /* 73.对称字符串的最大长度(字符串). 题目:输入一个字符串,输出该字符串中对称的子字符串的最大长度. 比如输入字符串“google”,由于该字符串里最长的对称子字符串是“g

串口通讯编程中涉及到的字符串处理关键字及处理字符串对应函数

一   字符串处理关键字总结 作用 关键字 比较两个字符串. StrComp 变换字符串. StrConv 大小写变换. Format, LCase, UCase 建立重复字符的字符串. Space, String 计算字符串长度. Len 设置字符串格式. Format 重排字符串. LSet, RSet 处理字符串. InStr, Left, LTrim, Mid, Right, RTrim, Trim 设置字符串比较规则. Option Compare 运用 ASCII 与 ANSI 值.

iOS 根据字符串长度计算label的尺寸

//计算字符串高度- (CGSize)labelAutoCalculateRectWith:(NSString*)text FontSize:(CGFloat)fontSize MaxSize:(CGSize)maxSize {        NSMutableParagraphStyle* paragraphStyle = [[NSMutableParagraphStyle alloc]init];        paragraphStyle.lineBreakMode=NSLineBreak

【JavaScript】计算字符串的长度

定义: functionGetChineseCount(str) { varchinieseCount=0; varbadChar="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; badChar+="abcdefghijklmnopqrstuvwxyz"; badChar+="0123456789"; badChar+=""+" ";//半角与全角空格 badChar+="`[emai

计算字符串长度,加车头

计算字符串长度,加车头.切换到IE模式下使用 0

C# 计算字符串在控制台中的显示长度

C# 计算字符串在控制台中的显示长度? 警告 您当前查看的页面是未经授权的转载! 如果当前版本排版错误,请前往查看最新版本:http://www.cnblogs.com/qin-nz/p/csharp-calculate-string-display-length.html 提示 更新时间:2016年01月09日. 本作品由勤奋的小孩创作,采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可. 欢迎转载,但任何转载必须保留完整文章,在显要地方显示署名以及原文链接( http