typescript - ¿Cómo puedo ignorar la fuente del sistema operativo en react-native?
Quiero ignorar la fuente del sistema operativo (iOS y Android) y usar las diferentes fuentes que utilicé en mi proyecto de react-native. Me gustaría hacerlo solo una vez, pero no entiendo cómo. ¿Puedes ayudarme?
Respuesta #1
Agregar fuentes a los activos
Agrega todos los archivos de fuentes que quieras a una carpeta «assets/fonts» en la raíz de tu proyecto de React Native
Package.json
A continuación, necesitamos decirle a React Native dónde se encuentran nuestras fuentes personalizadas. Hacemos esto agregando rnpm a package.json proporcionando la ruta a los archivos de fuentes:
"rnpm": {
"assets": [
"./assets/fonts/"
]
},
Luego le decimos a React Native que vincule esos archivos de fuente por nosotros:
react-native link
En IOS
Esto debería agregar las referencias de fuentes en su archivo Info.plist para iOS y en Android copiar los archivos de fuentes a android/app/src/main/assets/fonts. Puede verificar esto abriendo Info.plist desde la carpeta de iOS y buscando una clave UIAppFonts, debería ver algo similar a:
<key>UIAppFonts</key>
<array>
<string>YOUR_FONT_FILE.ttf</string>
</array>
En Android
si miras en la ruta del archivo “android/app/src/main/assets/fonts/” deberías ver que tus fuentes han sido copiadas:
Estilos de React Native
Con tus fuentes integradas y referenciadas, es un caso simple de agregarlas a tus estilos de React Native. Simplemente agrega una propiedad fontFamily con el nombre de tu fuente:
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: "center",
alignItems: "center",
backgroundColor: "#F5FCFF"
},
foo: {
fontFamily: "YOUR_FONT_FAMILY_NAME",
fontSize: 30,
textAlign: "center",
margin: 10
},
bar: {
fontFamily: "YOUR_FONT_FAMILY_NAME",
fontSize: 20,
textAlign: "center",
color: "#333333",
marginBottom: 5
}
});
Fuentes :
- https://medium.com/react-native-training/react-native-custom-fonts-ccc9aacf9e5e
- https://docs.expo.io/versions/latest/guides/using-custom-fonts/
- https://blog.bam.tech/developper-news/add-a-custom-font-to-your-react-native-app
