diff --git a/packages/react-native/ReactCommon/react/renderer/attributedstring/conversions.h b/packages/react-native/ReactCommon/react/renderer/attributedstring/conversions.h index f771236e7871..5635a692b17b 100644 --- a/packages/react-native/ReactCommon/react/renderer/attributedstring/conversions.h +++ b/packages/react-native/ReactCommon/react/renderer/attributedstring/conversions.h @@ -1076,6 +1076,66 @@ inline MapBuffer toMapBuffer(const FontVariant &fontVariant) if ((int)fontVariant & (int)FontVariant::ProportionalNums) { builder.putString(index++, "proportional-nums"); } + if ((int)fontVariant & (int)FontVariant::StylisticOne) { + builder.putString(index++, "stylistic-one"); + } + if ((int)fontVariant & (int)FontVariant::StylisticTwo) { + builder.putString(index++, "stylistic-two"); + } + if ((int)fontVariant & (int)FontVariant::StylisticThree) { + builder.putString(index++, "stylistic-three"); + } + if ((int)fontVariant & (int)FontVariant::StylisticFour) { + builder.putString(index++, "stylistic-four"); + } + if ((int)fontVariant & (int)FontVariant::StylisticFive) { + builder.putString(index++, "stylistic-five"); + } + if ((int)fontVariant & (int)FontVariant::StylisticSix) { + builder.putString(index++, "stylistic-six"); + } + if ((int)fontVariant & (int)FontVariant::StylisticSeven) { + builder.putString(index++, "stylistic-seven"); + } + if ((int)fontVariant & (int)FontVariant::StylisticEight) { + builder.putString(index++, "stylistic-eight"); + } + if ((int)fontVariant & (int)FontVariant::StylisticNine) { + builder.putString(index++, "stylistic-nine"); + } + if ((int)fontVariant & (int)FontVariant::StylisticTen) { + builder.putString(index++, "stylistic-ten"); + } + if ((int)fontVariant & (int)FontVariant::StylisticEleven) { + builder.putString(index++, "stylistic-eleven"); + } + if ((int)fontVariant & (int)FontVariant::StylisticTwelve) { + builder.putString(index++, "stylistic-twelve"); + } + if ((int)fontVariant & (int)FontVariant::StylisticThirteen) { + builder.putString(index++, "stylistic-thirteen"); + } + if ((int)fontVariant & (int)FontVariant::StylisticFourteen) { + builder.putString(index++, "stylistic-fourteen"); + } + if ((int)fontVariant & (int)FontVariant::StylisticFifteen) { + builder.putString(index++, "stylistic-fifteen"); + } + if ((int)fontVariant & (int)FontVariant::StylisticSixteen) { + builder.putString(index++, "stylistic-sixteen"); + } + if ((int)fontVariant & (int)FontVariant::StylisticSeventeen) { + builder.putString(index++, "stylistic-seventeen"); + } + if ((int)fontVariant & (int)FontVariant::StylisticEighteen) { + builder.putString(index++, "stylistic-eighteen"); + } + if ((int)fontVariant & (int)FontVariant::StylisticNineteen) { + builder.putString(index++, "stylistic-nineteen"); + } + if ((int)fontVariant & (int)FontVariant::StylisticTwenty) { + builder.putString(index++, "stylistic-twenty"); + } return builder.build(); } diff --git a/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt b/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt index 58c6325fbee8..b271040aa0d6 100644 --- a/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt +++ b/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt @@ -119,6 +119,7 @@ internal class RNTesterApplication : Application(), ReactApplication { override fun onCreate() { ReactFontManager.getInstance().addCustomFont(this, "Rubik", R.font.rubik) + ReactFontManager.getInstance().addCustomFont(this, "FiraCode", R.font.fira_code) super.onCreate() loadReactNative(this) } diff --git a/packages/rn-tester/android/app/src/main/res/font/fira_code.ttf b/packages/rn-tester/android/app/src/main/res/font/fira_code.ttf new file mode 100644 index 000000000000..d7077f1d6449 Binary files /dev/null and b/packages/rn-tester/android/app/src/main/res/font/fira_code.ttf differ diff --git a/packages/rn-tester/js/examples/Text/TextExample.android.js b/packages/rn-tester/js/examples/Text/TextExample.android.js index 04eb6f55e332..810778e2a020 100644 --- a/packages/rn-tester/js/examples/Text/TextExample.android.js +++ b/packages/rn-tester/js/examples/Text/TextExample.android.js @@ -389,6 +389,16 @@ function FontVariantsExample(props: {}): React.Node { 1111{'\n'} 2222{'\n'} + + Non-Stylistic & and $ + + + Stylistic & and $ + ); }