SCNText的textSize属性丢失

时间:2018-08-21 14:48:50

标签: swift arkit arscnview scntext

我想在ARSCNView中的SCNText周围添加一个SCNPlane。因此,我需要使用SCNText创建的文本的textSize,例如:

enter image description here

从图像中可以看到,有一个错误表明

  

SCNText没有成员'textSize'

但是我可以在Apple网站上看到SCNTexttextSize的相关文档。

有人知道这是什么问题,如何访问textSize属性?

我正在使用xCode 10.0 beta 4,swift 4.2,macOS Mojave 10.14 Beta。

1 个答案:

答案 0 :(得分:2)

textSize属性仅在macOS 10.8+上可用,这就是为什么您看不到它的原因(假设您当然是为IOS构建的)。我的意思是,如果您要构建MacOS应用,则可以访问该变量。如果您要为IOS进行构建,则不是。

如果要获取SCNText的大小,可以使用其boundingBox属性来获取其宽度和高度,例如:

 //1. Get The Bounding Box Of The Text Node
 let boundingBox = textNode.boundingBox

 //2. Get The Width & Height Of Our Node
 let width = boundingBox.max.x - boundingBox.min.x
 let height = boundingBox.max.y - boundingBox.min.y

如果只想设置fontSize,则可以执行以下操作:

 //1. Create An SCNNode With An SCNText Geometry
 let textNode = SCNNode()
 let textGeometry = SCNText(string: "StackOverflow", extrusionDepth: 1)
 textGeometry.font = UIFont(name: "Skia-Regular_Black", size: 20)

请记住,当您在ARKit中指定字体大小时,以米为单位。

希望有帮助...