En primer lugar, supongo que SpriteKit no hace ninguna diferencia.
- Necesita su fuente en .otf o .ttf copiada a su proyecto. Por ejemplo, en Supporting Files.
- Necesita editar el archivo .plist . Agregue la clave "Fuentes proporcionadas por la aplicación" en su plist y en el Elemento 0 copie el nombre de archivo exacto de la fuente que copió en sus archivos de soporte CON extensión. Por ejemplo: "JosefinSansStd-Light_0.otf"
- Asegúrese de que la fuente que importó a su aplicación esté empaquetada en la propia aplicación. Haga eso seleccionando su Objetivo , luego Construir Fases , luego Copiar Recursos del Paquete . Si no ve su fuente allí, arrástrela desde Archivos de soporte .
Finalmente, le gustaría enumerar todas sus fuentes cuando la aplicación se inicie solo para ver el nombre utilizable de su fuente. Lo harás con este pequeño fragmento de código:
NSArray *fontFamilies = [UIFont familyNames];
for (int i = 0; i < [fontFamilies count]; i++)
{
NSString *fontFamily = [fontFamilies objectAtIndex:i];
NSArray *fontNames = [UIFont fontNamesForFamilyName:[fontFamilies objectAtIndex:i]];
NSLog (@"%@: %@", fontFamily, fontNames);
}
Busque su fuente en los resultados impresos, por ejemplo, buscaría "Josefin" y vería que el nombre real de la fuente es "JosefinSansStd-Light". Después de eso, solo necesita usar esa fuente mediante:
UIFont *customFont = [UIFont fontWithName:@"JosefinSansStd-Light" size:20];
En iOS8, agrega sus fuentes directamente al proyecto y son visibles en el generador de interfaces. Modifique su código para tener en cuenta esto, pero estableciendo la fuente mediante programación para iOS7 y seleccionándola en el generador de interfaz xCode6. PD. El generador de interfaces en xCode6 le proporciona el nombre de fuente correcto que puede copiar y pegar en el código siguiente.
#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
if(SYSTEM_VERSION_LESS_THAN(@"8.0"))
{
UIFont *customFont = [UIFont fontWithName:@"OpenSans-Light" size:32];
self.registerLabel.font = customFont;
}
Espero que esto ayude, salud.