我想知道屏幕上显示的NSString的宽度(以像素为单位)。所以我可以将NSTextField的边界与字符串本身的长度完全吻合。所以我使用了IB的“标签”NSTextField,对于那些不知道我的意思的人,我得到了标题为“标签”的标签,字体“Lucida Grande 13px”,不可选择,不可编辑,常规尺寸,无背景和根据到IB它的宽度是38px宽。NSString sizeWithAttributes:不准确
如果我想获得它的宽度编程我用
[@"Label" sizeWithAttributes: [NSDictionary dictionaryWithObject: [NSFont fontWithName: @"Lucida Grande" size: 13] forKey: NSFontAttributeName]].width
哪位能给我33.293457。所以这是真正的宽度的5倍..
可能是,但高度是正确的,在逗号后面有6位数字......在做了一些测试后,它看起来总是比原来的尺寸小5px ..这就是为什么我怀疑属性有问题我不知道是什么。即使传递正确的颜色,背景样式,段落样式,换行符模式和方向,也会得到相同的结果,大小减少5 px。 – Jef 2010-03-13 19:32:17