我正在尝试在我的应用中动态加载字体,给定提供的URL路径到托管在我的服务器上的字体文件。 出于某种原因,NSURL不会从有效的字体文件路径初始化(http:// www.mydomain.com/my-font-file.ttf - 为SO限制而插入的空格)
即使指向我服务器上的完全有效的字体文件,此代码每次都会遇到失败语句:
if let fontUrl = NSURL(string: fontUrlString)
{
...handle font saving here...
}
else
{
println("Failed to create Font URL from string: \(fontUrlString)")
}
任何想法可能是什么问题?
再次,复制记录的' fontUrlString'到我的网页浏览器加载字体文件并保存好。字体文件也是一个.TTF文件而且没有任何损坏(我可以在我的机器上安装浏览器下载的字体就好了)。
答案 0 :(得分:1)
我正在尝试在我的应用中动态加载字体,给出了提供给我服务器上托管的字体文件的URL路径
你不能。您可以在应用包中添加字体,也可以通过调用CTFontDescriptorMatchFontDescriptorsWithProgressHandler
从Apple下载字体。但是,当应用运行时,您无法在应用中安装从Internet下载的任意字体。那将是一个安全漏洞。
答案 1 :(得分:0)
这对我来说很好用:
let s = "http://example.com/my-font-file.ttf"
if let url = NSURL(string: s) {
println(url)
} else {
println("Error")
}
您确定名称中没有空格,例如在ttf?
之后