私のアプリケーションでは、ドキュメント ディレクトリで ttf を使用したいと考えています。リンクを参照して、以下のコードを使用して CGFontRef のフォントを使用します
+ (UIFont *)loadFontAtPath:(NSString*)path{
NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];
// path is "/Users/............./Documents/bloktilt.ttf"
if(data == nil){
NSLog(@"Failed to load font. Data at path is null");
return nil;
}
CFErrorRef error;
CGDataProviderRef provider = CGDataProviderCreateWithCFData((CFDataRef)data);
CGFontRef font = CGFontCreateWithDataProvider(provider);
NSString *fontName = (NSString *)CGFontCopyPostScriptName(font);
UIFont *font1 = [UIFont fontWithName:fontName size:15];
if(!CTFontManagerRegisterGraphicsFont(font, &error)){
CFStringRef errorDescription = CFErrorCopyDescription(error);
NSLog(@"Failed to load font: %@", errorDescription);
CFRelease(errorDescription);
}
CFRelease(font);
CFRelease(provider);
return font1;
}
しかし問題は、上記のコードが nil を返すことです