自定义字体导致 SpriteKit 延迟

Custom font causes delay in SpriteKit

我尝试将标签字体更改为 bodoni 72,但每次我测试应用程序时,它都会在启动前冻结大约 2 秒。默认字体是 verdana,效果很好,但一旦我切换它,应用程序就会崩溃。我什至把字体文件放在了supporting files文件夹里。

      scoreLabel.fontName = "Bodoni 72"

这是代码,但不起作用。但是下面的代码确实...

      scoreLabel.fontName = "Verdana"

这不是 Xcode 或 Swift 的问题。那是您的代码中的问题。取而代之的是,尝试将标签的 fontName 设置为 "Bodoni",并将 fontSize(字体大小 作为浮点数 )设置为72.0.

见下文:

scoreLabel.fontName = "Bodoni"
scoreLabel.fontSize = 72

如果你想设置标签的颜色(这可能只在SpriteKitSKLabelNodes),你可以使用这个:

scoreLabel.fontColor = UIColor.whiteColor //replace with your color

如果您在 SpriteKit 中使用了不正确的字体名称,它会在尝试查找匹配项时造成延迟。

在这种情况下,"Bodoni 72" 是字体系列名称,但不是字体名称。如果您在 Mac 上打开 Font Book 应用程序并查看 Bodoni 72,您会发现可以展开它以查看该系列中的三种实际字体 - 'Book'、'Book italic'和 'Bold'.

如果您将代码更改为阅读

scoreLabel.fontName = "Bodoni 72 Book"

那么延迟就没有了