4

我正在尝试将来自以下网站的自定义字体(Imperator.ttf 和 goodfish.ttf)集成到我的电晕应用程序中:
http ://www.1001freefonts.com/top-fonts.php

我正在仔细阅读 Corona 官方网站上的教程:http:
//www.coronalabs.com/blog/2013/01/16/faq-wednesday-custom-fonts/

我遵循macosx集成的整个过程(通过双击等安装字体)并且没有收到任何错误。我还将字体文件名添加到我的 build.settings 文件中:

 UIAppFonts =
 {
       "Imperator.ttf"
 },

每当我启动模拟器并调试当前加载的字体时,新字体都不会出现。

是否有一种简单的方法可以在 osx 上的 corona 模拟器上调试问题,以解决字体无法加载的原因?

谢谢

4

2 回答 2

7

在将自定义字体安装到您的电晕应用程序时,您必须遵循以下步骤:

  • 在系统中安装字体。
  • 将字体文件(如:)复制并粘贴Imperator.ttf到您所在的应用程序文件夹中main.lua
  • 然后对于 iPhone(仅适用于 iPhone,Android 不需要这个),将以下行添加到您的build.settings

iphone =
    {
        plist =
        {
            UIAppFonts =
            {
                "Imperator.ttf"  -- Font file name
            },
            UIApplicationExitsOnSuspend = true
        },
    }

  • 使用以下命令调试并获得Font Names系统支持:

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

从上面的调试中,您可以获得Imperator在创建文本/标签时必须使用的确切字体名称(此处为:)。有时这可能与字体文件的名称不同。您也可以从 photoshop(它是文本工具字体名称)等应用程序中获取它。

local myText = display.newText("Label with custom font",150,100,"Imperator",20)

最后,您将获得如下输出:

在此处输入图像描述

继续编码......

于 2013-10-30T16:40:03.497 回答
-2

将 Imperator.ttf 字体文件放在 Assets 文件夹中

在课堂上使用以下代码:

字体 imperator_typeface =Typeface.createFromAsset(getContext().getAssets(),"Imperator.ttf");

your_textview.setTypeface(imperator_typeface);

于 2013-10-30T12:12:41.763 回答