Hello Friends.

Welcome to Infinitbility!

Today, we are going to learn about in react native font family below points.

Table of content

  1. React Native Supported fonts for android
  2. React Native Supported fonts for iOS
  3. Use your fonts ( custom font ) in react native
  4. Custom font in react native expo

we know our react-native default fonts are San Francisco for iOS and Roboto for android. but in this article, we discuss supported fonts by react-native and how to add custom fonts using the TTF file you also get TTF files to link for fonts.

Supported fonts for android with a code example


import React, { Component } from 'react';
import { AppRegistry, ScrollView, Text, StyleSheet} from 'react-native';

styles=StyleSheet.create({
    scroller: {
        flex: 1,
    }
});

export default class AndroidFonts extends Component{
  render (){
    return(
      <ScrollView style={styles.scroller}>
        <Text style={{fontFamily: 'normal'}}>  normal </Text>
        <Text style={{fontFamily: 'notoserif'}}>  notoserif </Text>
        <Text style={{fontFamily: 'sans-serif'}}>  sans-serif </Text>
        <Text style={{fontFamily: 'sans-serif-light'}}>  sans-serif-light </Text>
        <Text style={{fontFamily: 'sans-serif-thin'}}>  sans-serif-thin </Text>
        <Text style={{fontFamily: 'sans-serif-condensed'}}>  sans-serif-condensed </Text>
        <Text style={{fontFamily: 'sans-serif-medium'}}>  sans-serif-medium </Text>
        <Text style={{fontFamily: 'serif'}}>  serif </Text>
        <Text style={{fontFamily: 'Roboto'}}>  Roboto </Text>
        <Text style={{fontFamily: 'monospace'}}>  monospace </Text>        
      </ScrollView>
    );
  }
}

AppRegistry.registerComponent('AndroidFonts', () => AndroidFonts);

Supported fonts for iOS with a code example


import React, { Component } from 'react';
import { AppRegistry, ScrollView, Text, StyleSheet} from 'react-native';

styles=StyleSheet.create({
    scroller: {
        flex: 1,
    }
});

export default class IosFonts extends Component{
  render (){
    return(
      <ScrollView style={styles.scroller}>
        <Text style={{fontFamily: 'Academy Engraved LET'}}>Academy Engraved LET </Text>
        <Text style={{fontFamily: 'AcademyEngravedLetPlain'}}>AcademyEngravedLetPlain </Text>
        <Text style={{fontFamily: 'Al Nile'}}>Al Nile </Text>
        <Text style={{fontFamily: 'AlNile-Bold'}}>AlNile-Bold </Text>
        <Text style={{fontFamily: 'American Typewriter'}}>American Typewriter </Text>
        <Text style={{fontFamily: 'AmericanTypewriter-Bold'}}>AmericanTypewriter-Bold </Text>
        <Text style={{fontFamily: 'AmericanTypewriter-Condensed'}}>AmericanTypewriter-Condensed </Text>
        <Text style={{fontFamily: 'AmericanTypewriter-CondensedBold'}}>AmericanTypewriter-CondensedBold </Text>
        <Text style={{fontFamily: 'AmericanTypewriter-CondensedLight'}}>AmericanTypewriter-CondensedLight </Text>
        <Text style={{fontFamily: 'AmericanTypewriter-Light'}}>AmericanTypewriter-Light </Text>
        <Text style={{fontFamily: 'Apple Color Emoji'}}>Apple Color Emoji </Text>
        <Text style={{fontFamily: 'Apple SD Gothic Neo'}}>Apple SD Gothic Neo </Text>
        <Text style={{fontFamily: 'AppleColorEmoji'}}>AppleColorEmoji </Text>
        <Text style={{fontFamily: 'AppleSDGothicNeo-Bold'}}>AppleSDGothicNeo-Bold </Text>
        <Text style={{fontFamily: 'AppleSDGothicNeo-Light'}}>AppleSDGothicNeo-Light </Text>
        <Text style={{fontFamily: 'AppleSDGothicNeo-Medium'}}>AppleSDGothicNeo-Medium </Text>
        <Text style={{fontFamily: 'AppleSDGothicNeo-Regular'}}>AppleSDGothicNeo-Regular </Text>
        <Text style={{fontFamily: 'AppleSDGothicNeo-SemiBold'}}>AppleSDGothicNeo-SemiBold </Text>
        <Text style={{fontFamily: 'AppleSDGothicNeo-Thin'}}>AppleSDGothicNeo-Thin </Text>
        <Text style={{fontFamily: 'AppleSDGothicNeo-UltraLight'}}>AppleSDGothicNeo-UltraLight </Text>
        <Text style={{fontFamily: 'Arial'}}>Arial </Text>
        <Text style={{fontFamily: 'Arial Hebrew'}}>Arial Hebrew </Text>
        <Text style={{fontFamily: 'Arial Rounded MT Bold'}}>Arial Rounded MT Bold </Text>
        <Text style={{fontFamily: 'Arial-BoldItalicMT'}}>Arial-BoldItalicMT </Text>
        <Text style={{fontFamily: 'Arial-BoldMT'}}>Arial-BoldMT </Text>
        <Text style={{fontFamily: 'Arial-ItalicMT'}}>Arial-ItalicMT </Text>
        <Text style={{fontFamily: 'ArialHebrew'}}>ArialHebrew </Text>
        <Text style={{fontFamily: 'ArialHebrew-Bold'}}>ArialHebrew-Bold </Text>
        <Text style={{fontFamily: 'ArialHebrew-Light'}}>ArialHebrew-Light </Text>
        <Text style={{fontFamily: 'ArialMT'}}>ArialMT </Text>
        <Text style={{fontFamily: 'ArialRoundedMTBold'}}>ArialRoundedMTBold </Text>
        <Text style={{fontFamily: 'Avenir'}}>Avenir </Text>
        <Text style={{fontFamily: 'Avenir Next'}}>Avenir Next </Text>
        <Text style={{fontFamily: 'Avenir Next Condensed'}}>Avenir Next Condensed </Text>
        <Text style={{fontFamily: 'Avenir-Black'}}>Avenir-Black </Text>
        <Text style={{fontFamily: 'Avenir-BlackOblique'}}>Avenir-BlackOblique </Text>
        <Text style={{fontFamily: 'Avenir-Book'}}>Avenir-Book </Text>
        <Text style={{fontFamily: 'Avenir-BookOblique'}}>Avenir-BookOblique </Text>
        <Text style={{fontFamily: 'Avenir-Heavy'}}>Avenir-Heavy </Text>
        <Text style={{fontFamily: 'Avenir-HeavyOblique'}}>Avenir-HeavyOblique </Text>
        <Text style={{fontFamily: 'Avenir-Light'}}>Avenir-Light </Text>
        <Text style={{fontFamily: 'Avenir-LightOblique'}}>Avenir-LightOblique </Text>
        <Text style={{fontFamily: 'Avenir-Medium'}}>Avenir-Medium </Text>
        <Text style={{fontFamily: 'Avenir-MediumOblique'}}>Avenir-MediumOblique </Text>
        <Text style={{fontFamily: 'Avenir-Oblique'}}>Avenir-Oblique </Text>
        <Text style={{fontFamily: 'Avenir-Roman'}}>Avenir-Roman </Text>
        <Text style={{fontFamily: 'AvenirNext-Bold'}}>AvenirNext-Bold </Text>
        <Text style={{fontFamily: 'AvenirNext-BoldItalic'}}>AvenirNext-BoldItalic </Text>
        <Text style={{fontFamily: 'AvenirNext-DemiBold'}}>AvenirNext-DemiBold </Text>
        <Text style={{fontFamily: 'AvenirNext-DemiBoldItalic'}}>AvenirNext-DemiBoldItalic </Text>
        <Text style={{fontFamily: 'AvenirNext-Heavy'}}>AvenirNext-Heavy </Text>
        <Text style={{fontFamily: 'AvenirNext-HeavyItalic'}}>AvenirNext-HeavyItalic </Text>
        <Text style={{fontFamily: 'AvenirNext-Italic'}}>AvenirNext-Italic </Text>
        <Text style={{fontFamily: 'AvenirNext-Medium'}}>AvenirNext-Medium </Text>
        <Text style={{fontFamily: 'AvenirNext-MediumItalic'}}>AvenirNext-MediumItalic </Text>
        <Text style={{fontFamily: 'AvenirNext-Regular'}}>AvenirNext-Regular </Text>
        <Text style={{fontFamily: 'AvenirNext-UltraLight'}}>AvenirNext-UltraLight </Text>
        <Text style={{fontFamily: 'AvenirNext-UltraLightItalic'}}>AvenirNext-UltraLightItalic </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-Bold'}}>AvenirNextCondensed-Bold </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-BoldItalic'}}>AvenirNextCondensed-BoldItalic </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-DemiBold'}}>AvenirNextCondensed-DemiBold </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-DemiBoldItalic'}}>AvenirNextCondensed-DemiBoldItalic </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-Heavy'}}>AvenirNextCondensed-Heavy </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-HeavyItalic'}}>AvenirNextCondensed-HeavyItalic </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-Italic'}}>AvenirNextCondensed-Italic </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-Medium'}}>AvenirNextCondensed-Medium </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-MediumItalic'}}>AvenirNextCondensed-MediumItalic </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-Regular'}}>AvenirNextCondensed-Regular </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-UltraLight'}}>AvenirNextCondensed-UltraLight </Text>
        <Text style={{fontFamily: 'AvenirNextCondensed-UltraLightItalic'}}>AvenirNextCondensed-UltraLightItalic </Text>
        <Text style={{fontFamily: 'Bangla Sangam MN'}}>Bangla Sangam MN </Text>
        <Text style={{fontFamily: 'Baskerville'}}>Baskerville </Text>
        <Text style={{fontFamily: 'Baskerville-Bold'}}>Baskerville-Bold </Text>
        <Text style={{fontFamily: 'Baskerville-BoldItalic'}}>Baskerville-BoldItalic </Text>
        <Text style={{fontFamily: 'Baskerville-Italic'}}>Baskerville-Italic </Text>
        <Text style={{fontFamily: 'Baskerville-SemiBold'}}>Baskerville-SemiBold </Text>
        <Text style={{fontFamily: 'Baskerville-SemiBoldItalic'}}>Baskerville-SemiBoldItalic </Text>
        <Text style={{fontFamily: 'Bodoni 72'}}>Bodoni 72 </Text>
        <Text style={{fontFamily: 'Bodoni 72 Oldstyle'}}>Bodoni 72 Oldstyle </Text>
        <Text style={{fontFamily: 'Bodoni 72 Smallcaps'}}>Bodoni 72 Smallcaps </Text>
        <Text style={{fontFamily: 'Bodoni Ornaments'}}>Bodoni Ornaments </Text>
        <Text style={{fontFamily: 'BodoniOrnamentsITCTT'}}>BodoniOrnamentsITCTT </Text>
        <Text style={{fontFamily: 'BodoniSvtyTwoITCTT-Bold'}}>BodoniSvtyTwoITCTT-Bold </Text>
        <Text style={{fontFamily: 'BodoniSvtyTwoITCTT-Book'}}>BodoniSvtyTwoITCTT-Book </Text>
        <Text style={{fontFamily: 'BodoniSvtyTwoITCTT-BookIta'}}>BodoniSvtyTwoITCTT-BookIta </Text>
        <Text style={{fontFamily: 'BodoniSvtyTwoOSITCTT-Bold'}}>BodoniSvtyTwoOSITCTT-Bold </Text>
        <Text style={{fontFamily: 'BodoniSvtyTwoOSITCTT-Book'}}>BodoniSvtyTwoOSITCTT-Book </Text>
        <Text style={{fontFamily: 'BodoniSvtyTwoSCITCTT-Book'}}>BodoniSvtyTwoSCITCTT-Book </Text>
        <Text style={{fontFamily: 'Bradley Hand'}}>Bradley Hand </Text>
        <Text style={{fontFamily: 'BradleyHandITCTT-Bold'}}>BradleyHandITCTT-Bold </Text>
        <Text style={{fontFamily: 'Chalkboard SE'}}>Chalkboard SE </Text>
        <Text style={{fontFamily: 'ChalkboardSE-Bold'}}>ChalkboardSE-Bold </Text>
        <Text style={{fontFamily: 'ChalkboardSE-Light'}}>ChalkboardSE-Light </Text>
        <Text style={{fontFamily: 'ChalkboardSE-Regular'}}>ChalkboardSE-Regular </Text>
        <Text style={{fontFamily: 'Chalkduster'}}>Chalkduster </Text>
        <Text style={{fontFamily: 'Chalkduster'}}>Chalkduster </Text>
        <Text style={{fontFamily: 'Cochin'}}>Cochin </Text>
        <Text style={{fontFamily: 'Cochin-Bold'}}>Cochin-Bold </Text>
        <Text style={{fontFamily: 'Cochin-BoldItalic'}}>Cochin-BoldItalic </Text>
        <Text style={{fontFamily: 'Cochin-Italic'}}>Cochin-Italic </Text>
        <Text style={{fontFamily: 'Copperplate'}}>Copperplate </Text>
        <Text style={{fontFamily: 'Copperplate-Bold'}}>Copperplate-Bold </Text>
        <Text style={{fontFamily: 'Copperplate-Light'}}>Copperplate-Light </Text>
        <Text style={{fontFamily: 'Courier'}}>Courier </Text>
        <Text style={{fontFamily: 'Courier New'}}>Courier New </Text>
        <Text style={{fontFamily: 'Courier-Bold'}}>Courier-Bold </Text>
        <Text style={{fontFamily: 'Courier-BoldOblique'}}>Courier-BoldOblique </Text>
        <Text style={{fontFamily: 'Courier-Oblique'}}>Courier-Oblique </Text>
        <Text style={{fontFamily: 'CourierNewPS-BoldItalicMT'}}>CourierNewPS-BoldItalicMT </Text>
        <Text style={{fontFamily: 'CourierNewPS-BoldMT'}}>CourierNewPS-BoldMT </Text>
        <Text style={{fontFamily: 'CourierNewPS-ItalicMT'}}>CourierNewPS-ItalicMT </Text>
        <Text style={{fontFamily: 'CourierNewPSMT'}}>CourierNewPSMT </Text>
        <Text style={{fontFamily: 'Damascus'}}>Damascus </Text>
        <Text style={{fontFamily: 'DamascusBold'}}>DamascusBold </Text>
        <Text style={{fontFamily: 'DamascusLight'}}>DamascusLight </Text>
        <Text style={{fontFamily: 'DamascusMedium'}}>DamascusMedium </Text>
        <Text style={{fontFamily: 'DamascusSemiBold'}}>DamascusSemiBold </Text>
        <Text style={{fontFamily: 'Devanagari Sangam MN'}}>Devanagari Sangam MN </Text>
        <Text style={{fontFamily: 'DevanagariSangamMN'}}>DevanagariSangamMN </Text>
        <Text style={{fontFamily: 'DevanagariSangamMN-Bold'}}>DevanagariSangamMN-Bold </Text>
        <Text style={{fontFamily: 'Didot'}}>Didot </Text>
        <Text style={{fontFamily: 'Didot-Bold'}}>Didot-Bold </Text>
        <Text style={{fontFamily: 'Didot-Italic'}}>Didot-Italic </Text>
        <Text style={{fontFamily: 'DiwanMishafi'}}>DiwanMishafi </Text>
        <Text style={{fontFamily: 'Euphemia UCAS'}}>Euphemia UCAS </Text>
        <Text style={{fontFamily: 'EuphemiaUCAS-Bold'}}>EuphemiaUCAS-Bold </Text>
        <Text style={{fontFamily: 'EuphemiaUCAS-Italic'}}>EuphemiaUCAS-Italic </Text>
        <Text style={{fontFamily: 'Farah'}}>Farah </Text>
        <Text style={{fontFamily: 'Futura'}}>Futura </Text>
        <Text style={{fontFamily: 'Futura-CondensedExtraBold'}}>Futura-CondensedExtraBold </Text>
        <Text style={{fontFamily: 'Futura-CondensedMedium'}}>Futura-CondensedMedium </Text>
        <Text style={{fontFamily: 'Futura-Medium'}}>Futura-Medium </Text>
        <Text style={{fontFamily: 'Futura-MediumItalic'}}>Futura-MediumItalic </Text>
        <Text style={{fontFamily: 'Geeza Pro'}}>Geeza Pro </Text>
        <Text style={{fontFamily: 'GeezaPro-Bold'}}>GeezaPro-Bold </Text>
        <Text style={{fontFamily: 'Georgia'}}>Georgia </Text>
        <Text style={{fontFamily: 'Georgia-Bold'}}>Georgia-Bold </Text>
        <Text style={{fontFamily: 'Georgia-BoldItalic'}}>Georgia-BoldItalic </Text>
        <Text style={{fontFamily: 'Georgia-Italic'}}>Georgia-Italic </Text>
        <Text style={{fontFamily: 'Gill Sans'}}>Gill Sans </Text>
        <Text style={{fontFamily: 'GillSans-Bold'}}>GillSans-Bold </Text>
        <Text style={{fontFamily: 'GillSans-BoldItalic'}}>GillSans-BoldItalic </Text>
        <Text style={{fontFamily: 'GillSans-Italic'}}>GillSans-Italic </Text>
        <Text style={{fontFamily: 'GillSans-Light'}}>GillSans-Light </Text>
        <Text style={{fontFamily: 'GillSans-LightItalic'}}>GillSans-LightItalic </Text>
        <Text style={{fontFamily: 'GillSans-SemiBold'}}>GillSans-SemiBold </Text>
        <Text style={{fontFamily: 'GillSans-SemiBoldItalic'}}>GillSans-SemiBoldItalic </Text>
        <Text style={{fontFamily: 'GillSans-UltraBold'}}>GillSans-UltraBold </Text>
        <Text style={{fontFamily: 'Gujarati Sangam MN'}}>Gujarati Sangam MN </Text>
        <Text style={{fontFamily: 'GujaratiSangamMN'}}>GujaratiSangamMN </Text>
        <Text style={{fontFamily: 'GujaratiSangamMN-Bold'}}>GujaratiSangamMN-Bold </Text>
        <Text style={{fontFamily: 'Gurmukhi MN'}}>Gurmukhi MN </Text>
        <Text style={{fontFamily: 'GurmukhiMN-Bold'}}>GurmukhiMN-Bold </Text>
        <Text style={{fontFamily: 'Heiti SC'}}>Heiti SC </Text>
        <Text style={{fontFamily: 'Heiti TC'}}>Heiti TC </Text>
        <Text style={{fontFamily: 'Helvetica'}}>Helvetica </Text>
        <Text style={{fontFamily: 'Helvetica Neue'}}>Helvetica Neue </Text>
        <Text style={{fontFamily: 'Helvetica-Bold'}}>Helvetica-Bold </Text>
        <Text style={{fontFamily: 'Helvetica-BoldOblique'}}>Helvetica-BoldOblique </Text>
        <Text style={{fontFamily: 'Helvetica-Light'}}>Helvetica-Light </Text>
        <Text style={{fontFamily: 'Helvetica-LightOblique'}}>Helvetica-LightOblique </Text>
        <Text style={{fontFamily: 'Helvetica-Oblique'}}>Helvetica-Oblique </Text>
        <Text style={{fontFamily: 'HelveticaNeue-Bold'}}>HelveticaNeue-Bold </Text>
        <Text style={{fontFamily: 'HelveticaNeue-BoldItalic'}}>HelveticaNeue-BoldItalic </Text>
        <Text style={{fontFamily: 'HelveticaNeue-CondensedBlack'}}>HelveticaNeue-CondensedBlack </Text>
        <Text style={{fontFamily: 'HelveticaNeue-CondensedBold'}}>HelveticaNeue-CondensedBold </Text>
        <Text style={{fontFamily: 'HelveticaNeue-Italic'}}>HelveticaNeue-Italic </Text>
        <Text style={{fontFamily: 'HelveticaNeue-Light'}}>HelveticaNeue-Light </Text>
        <Text style={{fontFamily: 'HelveticaNeue-LightItalic'}}>HelveticaNeue-LightItalic </Text>
        <Text style={{fontFamily: 'HelveticaNeue-Medium'}}>HelveticaNeue-Medium </Text>
        <Text style={{fontFamily: 'HelveticaNeue-MediumItalic'}}>HelveticaNeue-MediumItalic </Text>
        <Text style={{fontFamily: 'HelveticaNeue-Thin'}}>HelveticaNeue-Thin </Text>
        <Text style={{fontFamily: 'HelveticaNeue-ThinItalic'}}>HelveticaNeue-ThinItalic </Text>
        <Text style={{fontFamily: 'HelveticaNeue-UltraLight'}}>HelveticaNeue-UltraLight </Text>
        <Text style={{fontFamily: 'HelveticaNeue-UltraLightItalic'}}>HelveticaNeue-UltraLightItalic </Text>
        <Text style={{fontFamily: 'Hiragino Mincho ProN'}}>Hiragino Mincho ProN </Text>
        <Text style={{fontFamily: 'Hiragino Sans'}}>Hiragino Sans </Text>
        <Text style={{fontFamily: 'HiraginoSans-W3'}}>HiraginoSans-W3 </Text>
        <Text style={{fontFamily: 'HiraginoSans-W6'}}>HiraginoSans-W6 </Text>
        <Text style={{fontFamily: 'HiraMinProN-W3'}}>HiraMinProN-W3 </Text>
        <Text style={{fontFamily: 'HiraMinProN-W6'}}>HiraMinProN-W6 </Text>
        <Text style={{fontFamily: 'Hoefler Text'}}>Hoefler Text </Text>
        <Text style={{fontFamily: 'HoeflerText-Black'}}>HoeflerText-Black </Text>
        <Text style={{fontFamily: 'HoeflerText-BlackItalic'}}>HoeflerText-BlackItalic </Text>
        <Text style={{fontFamily: 'HoeflerText-Italic'}}>HoeflerText-Italic </Text>
        <Text style={{fontFamily: 'HoeflerText-Regular'}}>HoeflerText-Regular </Text>
        <Text style={{fontFamily: 'Iowan Old Style'}}>Iowan Old Style </Text>
        <Text style={{fontFamily: 'IowanOldStyle-Bold'}}>IowanOldStyle-Bold </Text>
        <Text style={{fontFamily: 'IowanOldStyle-BoldItalic'}}>IowanOldStyle-BoldItalic </Text>
        <Text style={{fontFamily: 'IowanOldStyle-Italic'}}>IowanOldStyle-Italic </Text>
        <Text style={{fontFamily: 'IowanOldStyle-Roman'}}>IowanOldStyle-Roman </Text>
        <Text style={{fontFamily: 'Kailasa'}}>Kailasa </Text>
        <Text style={{fontFamily: 'Kailasa-Bold'}}>Kailasa-Bold </Text>
        <Text style={{fontFamily: 'Kannada Sangam MN'}}>Kannada Sangam MN </Text>
        <Text style={{fontFamily: 'KannadaSangamMN'}}>KannadaSangamMN </Text>
        <Text style={{fontFamily: 'KannadaSangamMN-Bold'}}>KannadaSangamMN-Bold </Text>
        <Text style={{fontFamily: 'Khmer Sangam MN'}}>Khmer Sangam MN </Text>
        <Text style={{fontFamily: 'Kohinoor Bangla'}}>Kohinoor Bangla </Text>
        <Text style={{fontFamily: 'Kohinoor Devanagari'}}>Kohinoor Devanagari </Text>
        <Text style={{fontFamily: 'Kohinoor Telugu'}}>Kohinoor Telugu </Text>
        <Text style={{fontFamily: 'KohinoorBangla-Light'}}>KohinoorBangla-Light </Text>
        <Text style={{fontFamily: 'KohinoorBangla-Regular'}}>KohinoorBangla-Regular </Text>
        <Text style={{fontFamily: 'KohinoorBangla-Semibold'}}>KohinoorBangla-Semibold </Text>
        <Text style={{fontFamily: 'KohinoorDevanagari-Light'}}>KohinoorDevanagari-Light </Text>
        <Text style={{fontFamily: 'KohinoorDevanagari-Regular'}}>KohinoorDevanagari-Regular </Text>
        <Text style={{fontFamily: 'KohinoorDevanagari-Semibold'}}>KohinoorDevanagari-Semibold </Text>
        <Text style={{fontFamily: 'KohinoorTelugu-Light'}}>KohinoorTelugu-Light </Text>
        <Text style={{fontFamily: 'KohinoorTelugu-Medium'}}>KohinoorTelugu-Medium </Text>
        <Text style={{fontFamily: 'KohinoorTelugu-Regular'}}>KohinoorTelugu-Regular </Text>
        <Text style={{fontFamily: 'Lao Sangam MN'}}>Lao Sangam MN </Text>
        <Text style={{fontFamily: 'Malayalam Sangam MN'}}>Malayalam Sangam MN </Text>
        <Text style={{fontFamily: 'MalayalamSangamMN'}}>MalayalamSangamMN </Text>
        <Text style={{fontFamily: 'MalayalamSangamMN-Bold'}}>MalayalamSangamMN-Bold </Text>
        <Text style={{fontFamily: 'Marker Felt'}}>Marker Felt </Text>
        <Text style={{fontFamily: 'MarkerFelt-Thin'}}>MarkerFelt-Thin </Text>
        <Text style={{fontFamily: 'MarkerFelt-Wide'}}>MarkerFelt-Wide </Text>
        <Text style={{fontFamily: 'Menlo'}}>Menlo </Text>
        <Text style={{fontFamily: 'Menlo-Bold'}}>Menlo-Bold </Text>
        <Text style={{fontFamily: 'Menlo-BoldItalic'}}>Menlo-BoldItalic </Text>
        <Text style={{fontFamily: 'Menlo-Italic'}}>Menlo-Italic </Text>
        <Text style={{fontFamily: 'Menlo-Regular'}}>Menlo-Regular </Text>
        <Text style={{fontFamily: 'Mishafi'}}>Mishafi </Text>
        <Text style={{fontFamily: 'Noteworthy'}}>Noteworthy </Text>
        <Text style={{fontFamily: 'Noteworthy-Bold'}}>Noteworthy-Bold </Text>
        <Text style={{fontFamily: 'Noteworthy-Light'}}>Noteworthy-Light </Text>
        <Text style={{fontFamily: 'Optima'}}>Optima </Text>
        <Text style={{fontFamily: 'Optima-Bold'}}>Optima-Bold </Text>
        <Text style={{fontFamily: 'Optima-BoldItalic'}}>Optima-BoldItalic </Text>
        <Text style={{fontFamily: 'Optima-ExtraBlack'}}>Optima-ExtraBlack </Text>
        <Text style={{fontFamily: 'Optima-Italic'}}>Optima-Italic </Text>
        <Text style={{fontFamily: 'Optima-Regular'}}>Optima-Regular </Text>
        <Text style={{fontFamily: 'Oriya Sangam MN'}}>Oriya Sangam MN </Text>
        <Text style={{fontFamily: 'OriyaSangamMN'}}>OriyaSangamMN </Text>
        <Text style={{fontFamily: 'OriyaSangamMN-Bold'}}>OriyaSangamMN-Bold </Text>
        <Text style={{fontFamily: 'Palatino'}}>Palatino </Text>
        <Text style={{fontFamily: 'Palatino-Bold'}}>Palatino-Bold </Text>
        <Text style={{fontFamily: 'Palatino-BoldItalic'}}>Palatino-BoldItalic </Text>
        <Text style={{fontFamily: 'Palatino-Italic'}}>Palatino-Italic </Text>
        <Text style={{fontFamily: 'Palatino-Roman'}}>Palatino-Roman </Text>
        <Text style={{fontFamily: 'Papyrus'}}>Papyrus </Text>
        <Text style={{fontFamily: 'Papyrus-Condensed'}}>Papyrus-Condensed </Text>
        <Text style={{fontFamily: 'Party LET'}}>Party LET </Text>
        <Text style={{fontFamily: 'PartyLetPlain'}}>PartyLetPlain </Text>
        <Text style={{fontFamily: 'PingFang HK'}}>PingFang HK </Text>
        <Text style={{fontFamily: 'PingFang SC'}}>PingFang SC </Text>
        <Text style={{fontFamily: 'PingFang TC'}}>PingFang TC </Text>
        <Text style={{fontFamily: 'PingFangHK-Light'}}>PingFangHK-Light </Text>
        <Text style={{fontFamily: 'PingFangHK-Medium'}}>PingFangHK-Medium </Text>
        <Text style={{fontFamily: 'PingFangHK-Regular'}}>PingFangHK-Regular </Text>
        <Text style={{fontFamily: 'PingFangHK-Semibold'}}>PingFangHK-Semibold </Text>
        <Text style={{fontFamily: 'PingFangHK-Thin'}}>PingFangHK-Thin </Text>
        <Text style={{fontFamily: 'PingFangHK-Ultralight'}}>PingFangHK-Ultralight </Text>
        <Text style={{fontFamily: 'PingFangSC-Light'}}>PingFangSC-Light </Text>
        <Text style={{fontFamily: 'PingFangSC-Medium'}}>PingFangSC-Medium </Text>
        <Text style={{fontFamily: 'PingFangSC-Regular'}}>PingFangSC-Regular </Text>
        <Text style={{fontFamily: 'PingFangSC-Semibold'}}>PingFangSC-Semibold </Text>
        <Text style={{fontFamily: 'PingFangSC-Thin'}}>PingFangSC-Thin </Text>
        <Text style={{fontFamily: 'PingFangSC-Ultralight'}}>PingFangSC-Ultralight </Text>
        <Text style={{fontFamily: 'PingFangTC-Light'}}>PingFangTC-Light </Text>
        <Text style={{fontFamily: 'PingFangTC-Medium'}}>PingFangTC-Medium </Text>
        <Text style={{fontFamily: 'PingFangTC-Regular'}}>PingFangTC-Regular </Text>
        <Text style={{fontFamily: 'PingFangTC-Semibold'}}>PingFangTC-Semibold </Text>
        <Text style={{fontFamily: 'PingFangTC-Thin'}}>PingFangTC-Thin </Text>
        <Text style={{fontFamily: 'PingFangTC-Ultralight'}}>PingFangTC-Ultralight </Text>
        <Text style={{fontFamily: 'Savoye LET'}}>Savoye LET </Text>
        <Text style={{fontFamily: 'SavoyeLetPlain'}}>SavoyeLetPlain </Text>
        <Text style={{fontFamily: 'Sinhala Sangam MN'}}>Sinhala Sangam MN </Text>
        <Text style={{fontFamily: 'SinhalaSangamMN'}}>SinhalaSangamMN </Text>
        <Text style={{fontFamily: 'SinhalaSangamMN-Bold'}}>SinhalaSangamMN-Bold </Text>
        <Text style={{fontFamily: 'Snell Roundhand'}}>Snell Roundhand </Text>
        <Text style={{fontFamily: 'SnellRoundhand-Black'}}>SnellRoundhand-Black </Text>
        <Text style={{fontFamily: 'SnellRoundhand-Bold'}}>SnellRoundhand-Bold </Text>
        <Text style={{fontFamily: 'Symbol'}}>Symbol </Text>
        <Text style={{fontFamily: 'Tamil Sangam MN'}}>Tamil Sangam MN </Text>
        <Text style={{fontFamily: 'TamilSangamMN-Bold'}}>TamilSangamMN-Bold </Text>
        <Text style={{fontFamily: 'Telugu Sangam MN'}}>Telugu Sangam MN </Text>
        <Text style={{fontFamily: 'Thonburi'}}>Thonburi </Text>
        <Text style={{fontFamily: 'Thonburi-Bold'}}>Thonburi-Bold </Text>
        <Text style={{fontFamily: 'Thonburi-Light'}}>Thonburi-Light </Text>
        <Text style={{fontFamily: 'Times New Roman'}}>Times New Roman </Text>
        <Text style={{fontFamily: 'TimesNewRomanPS-BoldItalicMT'}}>TimesNewRomanPS-BoldItalicMT </Text>
        <Text style={{fontFamily: 'TimesNewRomanPS-BoldMT'}}>TimesNewRomanPS-BoldMT </Text>
        <Text style={{fontFamily: 'TimesNewRomanPS-ItalicMT'}}>TimesNewRomanPS-ItalicMT </Text>
        <Text style={{fontFamily: 'TimesNewRomanPSMT'}}>TimesNewRomanPSMT </Text>
        <Text style={{fontFamily: 'Trebuchet MS'}}>Trebuchet MS </Text>
        <Text style={{fontFamily: 'Trebuchet-BoldItalic'}}>Trebuchet-BoldItalic </Text>
        <Text style={{fontFamily: 'TrebuchetMS-Bold'}}>TrebuchetMS-Bold </Text>
        <Text style={{fontFamily: 'TrebuchetMS-Italic'}}>TrebuchetMS-Italic </Text>
        <Text style={{fontFamily: 'Verdana'}}>Verdana </Text>
        <Text style={{fontFamily: 'Verdana-Bold'}}>Verdana-Bold </Text>
        <Text style={{fontFamily: 'Verdana-BoldItalic'}}>Verdana-BoldItalic </Text>
        <Text style={{fontFamily: 'Verdana-Italic'}}>Verdana-Italic </Text>
        <Text style={{fontFamily: 'Zapf Dingbats'}}>Zapf Dingbats </Text>
        <Text style={{fontFamily: 'ZapfDingbatsITC'}}>ZapfDingbatsITC </Text>
        <Text style={{fontFamily: 'Zapfino'}}>Zapfino </Text>
      </ScrollView>
    );
  }
}

AppRegistry.registerComponent('IosFonts', () => IosFonts);

Use your fonts ( custom font ) in react native

In react native, adding custom fonts is very easy, All we have to do is to create a fonts directory, add the custom fonts that we want to use, create a config file, add the path, and link them to the project.

Step 1: Adding fonts in font directory

Download the file from https://github.com/infinitbility/fonts or any other place and put it in your project/assets/fonts folder.

PROJECT-DIRECTORY/assets/fonts

Step 2: Fonts Configuration changes

If not already created, create a config file at the root of the project named react-native.config.js. Proceed by adding the following code inside module.exports:

module.exports = {
    project: {
        ios:{},
        android:{}
    },
    assets:['./assets/fonts/'],
}

After the above steps have been done, we can simply run a command to link the fonts that we just added.

npx react-native link

Or

yarn react-native link

The 0.69 version of React Native link command has been removed. react-native-asset should be used to automatically link the font assets. Just run the following command:

npx react-native-asset

That’s about it! After this command, we can see the fonts we added in the android/app/src/main/assets/fonts directory and in Info.plist (for Android and iOS respectively).

Use custom font code example

Use fonts like the below code example

Note: put filename on font-family without .ttf extension


import React, { Component } from 'react';
import { AppRegistry, ScrollView, Text, StyleSheet} from 'react-native';

styles=StyleSheet.create({
    scroller: {
        flex: 1,
    }
});

export default class Text extends Component{
  render (){
    return(
      <ScrollView style={styles.scroller}>
        {/* put file name on font family without .ttf extension */}
        <Text style={{fontFamily: 'Georgia'}}>  Arial </Text>       
      </ScrollView>
    );
  }
}

Custom font in react native expo

In the expo we have an expo-font package that provides useFonts hooks, using this hook we can easily use any custom font.

The initial step is the same — to fetch the fonts, create the “fonts” directory under assets and move the fonts there.

There are two ways to initialize fonts in an Expo app; using hooks for functional components at root, or using the async function for the class components.

(Note: Do not load the content with the custom fonts until the fonts are loaded themselves)

Using useFonts for functional components

import * as React from 'react';
import { View, Text, StyleSheet } from 'react-native';
import { useFonts } from 'expo-font';

export default function App() {
  const [loaded] = useFonts({
    Montserrat: require('./assets/fonts/Georgia.ttf'),
  });

  if (!loaded) {
    return null;
  }

  return (
    <View style={{flex:1}>
      <Text style={{ fontFamily: 'Georgia', fontSize: 27 }}>Georgia</Text>
    </View>
  );
}

Using async function for class components

import * as React from 'react';
import { Text, View, StyleSheet } from 'react-native';
import * as Font from 'expo-font';

export default class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
        fontsLoaded: false
    }
  }

  async loadFonts() {
    await Font.loadAsync({
      'Georgia': require('./assets/fonts/Georgia'),
    });
    this.setState({ fontsLoaded: true });
  }

  componentDidMount() {
    this.loadFonts();
  }

  render() {
    if (this.state.fontsLoaded) {
      return (
        <View style={styles.container}>
          <Text style={{ fontSize: 21 }}>Default Font</Text>
          <Text style={{ fontFamily: 'Georgia', fontSize: 27 }}>Georgia</Text>
        </View>
      );
    } else {
      return null;
    }
  }
}

Here you get all react-native fonts TTF files

  1. mac fonts

https://github.com/infinitbility/fonts/tree/master/macfonts

  1. jetbrainsmono

https://github.com/infinitbility/fonts/tree/master/jetbrainsmono

Thanks for reading…

More From React Native Tutorial

Basics

1. Introduction To React Native

2. React Native Environment Setup using expo

3. React Native Environment Setup for windows

4. React Native Environment setup on Mac OS

5. React Native Environment setup on linux

6. React Native Project Structure

7. React Native State

8. React Native Props

9. React Native Styling

10. React Native Flexbox

11. React Native Text

12. React Native Textinput

13. React Native Commands

14. React Native ScrollView

Advances

1. React Native Dark Mode

2. React Native Fonts

3. React Native SQLite

4. React Native DatepickerAndroid

5. React native ScrollView scroll to position

6. How to align icon with text in react native

7. React Native Image

8. React Native Firebase Crashlytics

9. React Native Async Storage

10. React Native Share

Error & Issue Solution

1. Task :app:transformDexArchiveWithDexMergerForDebug FAILED In React Native

2. Expiring Daemon because JVM heap space is exhausted In React Native

3. Task :app:transformNativeLibsWithMergeJniLibsForDebug FAILED In React Native

4. Unable to determine the current character, it is not a string, number, array, or object in react native

5. App crashed immediately after install react native video or track player

6. how to delete SQLite database in android react native

7. React native material dropdown twice click issue

8. How to get the current route in react-navigation?

9. how to disable drawer on the drawer navigation screen?

10. Image not showing in ios 14 react native

11. React Native image picker launchimagelibrary on second time issue

12. how to open any link from react native render Html

13. Network request failed in react native fetch

14. React Native upload video example