【问题标题】:Text wrapping is not working for "SCNText" node文本换行不适用于“SCNText”节点
【发布时间】:2018-03-18 07:38:36
【问题描述】:

我可以在 AR 环境中显示 SCNText,但是当我尝试将文本包装在固定宽度和高度的容器中时,而不是在多行中显示它会重叠。

let text = SCNText(string: ktext, extrusionDepth: 0.0)
text.name = "text"
text.firstMaterial?.diffuse.contents = color
text.font = UIFont(name: fontName, size: size)
text.truncationMode = kCAAlignmentCenter
text.isWrapped = true
text.truncationMode = kCATruncationMiddle
text.containerFrame.size = CGSize(width: 3, height: 1)

【问题讨论】:

  • 您找到解决方案了吗?
  • 是的,正在调整字体大小。
  • 更大的字体和更小的比例因子。 forums.developer.apple.com/thread/85368
  • 我们怎样才能让文本水平换行?在 X 轴上?

标签: ios iphone scenekit augmented-reality arkit


【解决方案1】:

如果您在 SCNText 对象上使用“正常”字体大小和包含框架,然后在包含它的节点上设置比例,则所有内容都会按预期包装。比如:

let extrudedText = SCNText(string: definition.text, extrusionDepth: 0.1)
extrudedText.font = UIFont(name: definition.fontname, size: 0.2)!
...
extrudedText.font = UIFont(name: definition.fontname, size: 20)! 
extrudedText.containerFrame = CGRect(origin: .zero, size: CGSize(width: 100.0, height: 500.0))
...
scale = SCNVector3Make(0.01, 0.01, 0.01)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-05
    • 2013-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多