【发布时间】:2013-08-21 17:30:02
【问题描述】:
我在 UITextView 中使用非系统字体显示文本(即,我已将它与我的应用程序捆绑在一起)。该文本的一部分(即,高于正常水平的上升部分)在 UITextView 中被剪裁。
这是我创建 UITextView 的方法:
UITextView *tv = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 320, 300)];
tv.font = [UIFont fontWithName:MY_INSTALLED_FONT_NAME size:54.f];
tv.textColor = [UIColor brownColor];
tv.backgroundColor = [UIColor yellowColor];
tv.text = @"Hello\nHello";
当我将 UITextView 添加到视图层次结构时,我看到:
类似的问题的一个常见建议是(尽管我没有发现任何人有同样的问题)是确保 clipsToBounds 是 NO 并尝试修改 contentInset 属性UITextView 的。这些没有帮助。另一个屏幕截图(显示contentInset 调整):
使用各种工具(例如 Reveal 或 UIView 上的私有方法 recursiveDescription 两者都有帮助),我发现文本被 UITextView 的子视图剪切,这似乎是为了显示内容。在 iOS 6 中,该视图的类型为 UIWebDocumentView。
有人知道如何解决这个问题吗?我错过了什么明显的东西吗?
【问题讨论】:
-
您的字体配置文件中似乎有问题。如果设置不正确,可能是垂直间距?
-
@msgambel 感谢您的建议。但是,我正在使用的其他字体(来自同一来源)可以正确显示,并且提供该字体的人在提供数字字体方面非常有经验。此外,粗略检查
UIFont属性(ascender、capHeight等)看起来是正确的。但是,最好检查所有内容,并且我一定会查看字体本身。 -
你得到解决方案了吗@TimCamber?
标签: iphone ios uitextview typography