【问题标题】:How to handle height of Thai text in UILabel?如何处理 UILabel 中泰文的高度?
【发布时间】:2016-01-19 07:33:10
【问题描述】:

我正在开发一个我们目前正在翻译成泰语的应用程序。当我们在 iOS 7 上测试应用程序时,一切都很顺利,但在 iOS 8 上,UILabels 剪切了一些口音。

我们使用自动布局来布局应用程序的所有元素。

我在 iOS 8 的发行说明中的​​某处读到泰语字符默认字体已增加以增强可读性。但是,自动布局似乎并不关心标签的高度,就好像它正在显示拉丁文本一样,从而导致一些重音被剪裁。

在 iOS 中处理泰语文本的正确方法是什么?

编辑:这是显示问题的图片。 (OKiOS 7 上,CUTiOS 8 上。)

注意:我尝试将UILabelclipToBounds 属性设置为NO,文本确实没有被剪切。然而,这不是一个好的解决方案!如果我有两个一个在另一个之上的标签,我可能会有重叠的文本......

【问题讨论】:

  • 到底是什么问题?文字没有完整显示?
  • 编辑问题以显示问题。
  • 我把uitext视图的内容偏移设置为cgzeropoint
  • @engmahsa 这不是UITextView,而是UILabel
  • @FernandoMata 不。我从 Apple 那里得到了一些见解,他们告诉我这是他们在 CoreText 中的一个错误。我目前发现的唯一解决方法是使用 ParagraphStyle(仅限泰语)更改行高,并将属性字符串设置为我的标签。丑陋,但它有效......

标签: ios text autolayout uilabel thai


【解决方案1】:

我也遇到了同样的问题。问题是因为您使用的字体。比如字体Gotham Rounded在显示泰语时会被截掉。尝试使用其他字体。

【讨论】:

  • 谢谢,但这不是解决方案……我不想使用其他字体,我有设计限制。
【解决方案2】:

只想提一下,这个问题在 iOS 14 上仍然存在,在 iPhone 11 Pro 上测试过。

设置 lineHeight:

【讨论】:

  • 难以置信……?‍♂️
猜你喜欢
  • 2018-01-11
  • 1970-01-01
  • 1970-01-01
  • 2016-07-30
  • 1970-01-01
  • 1970-01-01
  • 2015-01-01
  • 2011-11-02
  • 2021-09-02
相关资源
最近更新 更多