下面列出的方法都没有给出 Cocoa 中文本的确切可见边界。我们如何获得它?
NSString
的boundingRectWithSize:options:attributes:
NSAttributedString
的boundingRectWithSize:options:
NSLayoutManager
的usedRectForTextContainer:
其实,从排版的角度来看,方框是正确的,但字体超出了自己的界限。您可以尝试NSStringDrawingUsesDeviceMetrics
使用字形边界而不是印刷边界的选项。
这是我编写的解决方案。非常欢迎任何改进建议。
代码片段:http
://pastebin.com/qJMKwvau
截图:http: //ScrnSht.com/jskyqs