Właśnie dodałem niestandardową czcionkę do mojej aplikacji natywnej w trybie reakcji (https://fonts.google.com/specimen/Josefin+Sans).Nie ma różnicy między czcionką cienka i lekka waga w systemie iOS podczas dodawania niestandardowej czcionki do mojej oryginalnej aplikacji reagowania.
JosefinSans-Bold.ttf
JosefinSans-BoldItalic.ttf
JosefinSans-Italic.ttf
JosefinSans-Light.ttf
JosefinSans-LightItalic.ttf
JosefinSans-Regular.ttf
JosefinSans-SemiBold.ttf
JosefinSans-SemiBoldItalic.ttf
JosefinSans-Thin.ttf
JosefinSans-ThinItalic.ttf
I powiązane pliki czcionek uruchamiając react-native link
po dodaniu
"rnpm": {
"assets": [
"path/to/my/font/files"
]
},
do mojego package.json
Następnie używać czcionki w mojej aplikacji tak:
customFont: {
fontFamily: 'Josefin Sans',
},
thin: {
fontWeight: '100'
},
light: {
fontWeight: '300'
},
semiBold: {
fontWeight: '600'
},
bold: {
fontWeight: '700'
},
italic: {
fontStyle: 'italic'
},
iOS simulator screenshot of the different fontWeight and fontStyle
Problem polega na tym, że nie ma różnicy między thin(fontWeight: '100')
& the .
Co próbowałem dotąd:
- Próbowałem z inną czcionkę z czcionek Google (taki sam problem).
- Próbowałem uruchomić aplikację na rzeczywistym urządzeniu (a nie na symulatorze), ale na próżno.
- próbował użyć domyślnej czcionki iOS z tych fontWeights:
thin
ilight
są naprawdę rozpoznawalny - wyświetlony czcionek rzeczywiste nazwy (
JosefinSans-Light
iJosefinSans-Thin
) w Xcode z:
_
for (NSString* family in [UIFont familyNames])
{
NSLog(@"%@", family);
for (NSString* name in [UIFont fontNamesForFamilyName: family])
{ NSLog(@" %@", name); }
}
Czy ktoś miał ten sam problem? Jakieś pomysły, jak to naprawić i wyświetlić rzeczywistą grubość cienkich i lekkich czcionek?
Thanks a lot
Witaj TheJizel, dzięki za odpowiedź! Właściwie dla większości wag wydaje się działać z właściwością fontWeight. Na przykład, 'fontWeight: '600' renderuje to samo co' fontFamily: Josefin Sans-SemiBold' oraz 'fontWeight: '900' przedstawia to samo co' fontFamily: Josefin Sans-Black'. Jednak nadal nie widzę różnicy między 'Josefin Sans-Thin' i' Josefin Sans-Light' :( – guitoof
@guitoof Czy możesz spróbować zmienić nazwy czcionek, tak aby nie było żadnych białych znaków (np. 'JosefinSans-Thin ')? To był mój problem, gdy korzystałem z Open Sans – TheJizel
TheJizel, dziękuję, tak, próbuję tego, ale rozumiem, że ważne jest to, że na Androidzie prefiks fontFamily powinien pasować do nazwy pliku.Dlatego, jeśli mój plik ma nazwę 'Josefin Sans_bold.ttf', używam' fontFamily: Josefin Sans_bold'. Więc nie ma szczęścia ... :( – guitoof