2012-08-13 73 views
1

我们开发了一个使用UIWebView在HMTL5中呈现页面的数字书籍应用程序。我们希望在每本书中都包含字体。为了符合字体许可协议,我们希望将字体加密到内存中,而不是加密到磁盘上。然后我们想从内存中访问UIWebView中的字体。这将提供非常可接受的安全级别。有谁知道如何让UIWebView从内存而不是从磁盘访问字体?从内存而不是从磁盘使用UIWebView中的@ font-face访问字体

回答

0
NSData *inData = /* your decrypted font-file data */; 
CFErrorRef error; 
CGDataProviderRef provider = CGDataProviderCreateWithCFData((CFDataRef)inData); 
CGFontRef font = CGFontCreateWithDataProvider(provider); 
if (! CTFontManagerRegisterGraphicsFont(font, &error)) { 
    CFStringRef errorDescription = CFErrorCopyDescription(error) 
    NSLog(@"Failed to load font: %@", errorDescription); 
    CFRelease(errorDescription); 
} 
CFRelease(font); 
CFRelease(provider); 

通过Marco