有没有办法如何计算N个像素中的空格数(一些UIFont)?
例如:
input: length = 100 pixels, font = <fontName>
output: 14 spaces with current font
答案 0 :(得分:1)
NSString *oneSpace = @" ";
CGSize fontSize = [oneSpace sizeWithAttributes: @{
NSFontAttributeName: [UIFont fontWithName:@"Helvetica" size:12 ]}];
return floor(100 / fontSize.width);
答案 1 :(得分:1)
我会计算一个空格的宽度,然后看看你的长度适合多少次。
NSInteger length = 100; // size in points (not pixels)
UIFont *font = ... // some font
CGSize spaceSize = [@" " sizeWithAttributes:@{ NSFontAttributeName : font }]; // size in points (not pixels)
NSInteger spaceCount = floor(length / spaceSize.width);
这将计算适合所分配长度的整个空格数。
请注意,所有代码都以点为单位,而不是像素。如果您真的想知道屏幕像素中有多少空格,则需要考虑屏幕比例。