Corona SDK内置字体无效

时间:2013-11-07 15:35:10

标签: fonts corona game-physics

我正在使用Corona SDK进行游戏开发。我需要为我的应用程序使用“comic sans font”。 我正在使用这样的字体。

GAME_FONT = "ComicSansMS"
local txtTitle = display.newText("My Text", 0, 0, GAME_FONT, 30)

这在模拟器中完美运行,但在真正的iPhone设备上却没有。我还尝试下载此字体并添加到项目中,然后更新build.settings文件。

settings = {

    orientation = {
        default = "landscapeRight",
        supported = { "landscapeRight", }
    },

    iphone = {
        plist = {
            UIAppFonts = { "comic.ttf"},
            UIStatusBarHidden = true,
            UIPrerenderedIcon = true, -- set to false for "shine" overlay           
            UIApplicationExitsOnSuspend = true, -- uncomment to quit app on suspend
        }
    },
}

但它仍然无法在真正的iPhone设备上运行。

我还确定“ComicSansMS”是否可通过以下代码内置。

local fonts = native.getFontNames()
    for i,fontname in ipairs(fonts) do
        print(fontname)
    end

我可以在列表中看到“ComicSansMS”。 任何建议都将不胜感激。

3 个答案:

答案 0 :(得分:1)

使用Windows模拟器或iOs设备测试字体是不同的。

关于如何确保“ComicSansMs”在您的iOs设备中的代码看起来像您检查了Windows模拟器的控制台(带打印)......

您应该在您的iOs设备上进行测试并查看结果:

local fonts = native.getFontNames()
local fontsNames = ''
for i,fontname in ipairs(fonts) do
    fontsNames = fontname .. ',' .. fontsNames
end

local textFontsNames = display.newText(fontsNames, 0, 0, native.systemFont, 30)

答案 1 :(得分:1)

我不确定Comic Sans是iOS设备的内置字体。您可以参考this链接以了解有关可用设备字体的更多信息。

并将字体名称更改为Comic Sans MS,而不是ComicSansMS(空间很重要)。 同时将comic.ttf文件复制并粘贴到main.lua所在的应用程序文件夹中。

有关在电晕应用中集成自定义字体的更多信息,您可以在帖子中参考我的答案: How do you integrate custom fonts in an app?

继续编码..................

答案 2 :(得分:0)

一个小技巧:在你的情况下将你的字体文件重命名为字体所具有的相同'逻辑'名称(ComicSansMS),没有ttf扩展名,并确保它仍然在主资源目录中,这样你就可以自然了 - 天生兼容Android :)

Android默认使用内部名称检查字体,因此如果您将所有添加的字体重命名为逻辑名称,它将在任何地方都可以使用,以后会减少麻烦:)

另外请确保在真正的iphone设备上测试,至少在google android模拟器中测试,如果你没有模拟器,因为某些字体在电晕模拟器上工作得很好但在iphone / android上根本不起作用: )