相关疑难解决方法(0)

如何在iOS下动态加载字体.(真的)

我已经看过这个问题并且多次回答,但我没有看到真正的答案.常见的"解决方案"是:

  • 将字体添加到应用程序包并将其注册到info.plist文件中.
  • 使用自定义字体解析和渲染库(如Zynga的FontLabel).
  • 它无法完成.

所以问题是:如何在iOS下动态加载字体? "动态"加载字体意味着加载在应用程序编译时未知的任何给定字体.

fonts dynamic truetype ios

14
推荐指数
2
解决办法
1万
查看次数

在iOS中下载并安装自定义字体

我在这里搜索了答案,但没有找到可用于获取答案的帖子。我只找到有关将字体预安装到应用程序的plist的答案,但对我不起作用。

我想做的是从URL下载字体,将文件本地存储到应用程序中,然后在控件中安装或使用该字体。

我正在将字体安装到平板电脑上以供使用。我可以使用下面的代码将它添加到CTFontManager中,而不会出现任何问题。

private func InstallFont(dest:String)
{
    let fontData = NSData(contentsOfFile: dest)!

    let dataProvider = CGDataProviderCreateWithCFData(fontData)
    let cgFont = CGFontCreateWithDataProvider(dataProvider)!

    var error: Unmanaged<CFError>?
    if !CTFontManagerRegisterGraphicsFont(cgFont, &error)
    {
        print("Error loading Font!")
    }
}
Run Code Online (Sandbox Code Playgroud)

我面临的问题是,我似乎找不到在应用程序中任何位置安装的字体,我尝试按如下所示进行设置,但默认设置为默认,告诉我找不到字体。

self.font = UIFont(name: "Font Name", size: 20.0)
Run Code Online (Sandbox Code Playgroud)

我还遍历了字体家族,以查看它是否已安装并且在那也没有成功。

for x in UIFont.familyNames()
{
    print(x)

    for z in UIFont.fontNamesForFamilyName(x)
    {
        print("== \(z)")
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在努力实现的目标是否可能?如果是这样,我在做什么错?

uifont ios swift

6
推荐指数
1
解决办法
2485
查看次数

在iOS中,是否可以在运行时向应用程序添加字体?

在我的应用程序中,我想让用户下载并使用字体,但我不知道如何动态地执行此操作。我知道我们必须指定要在应用程序文件中使用的字体Info.plist,但我们无法以编程方式向该 plist 文件添加任何内容。有 zynga 的库,但它是UILabel.

请帮忙

iphone objective-c uifont ios

5
推荐指数
2
解决办法
2548
查看次数

在Swift中将UIFont转换为CGFont?

需要通过CGFont以下功能

CGFontCreateCopyWithVariations(<#font: CGFont!#>, <#variations: CFDictionary!#>))
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uifont ios swift

3
推荐指数
2
解决办法
3752
查看次数

标签 统计

ios ×4

uifont ×3

iphone ×2

objective-c ×2

swift ×2

dynamic ×1

fonts ×1

truetype ×1