Невозможно добавить пользовательские шрифты в платформу iOS NativeScript - PullRequest
0 голосов
/ 02 июня 2018

Я следовал инструкциям в официальной документации, чтобы добавить собственный шрифт в свое родное приложение-скрипт.https://docs.nativescript.org/ui/styling#custom-fonts

Название шрифта Ubuntu, как показано на рисунке ниже.enter image description here

Я добавил шрифт Ubuntu.ttf в папку / шрифты моего проекта и добавил следующее в файл app.css:

enter image description here

.Ubuntu
{
    font-family: Ubuntu;
}

Тем не менее, после установки приложения я не вижу шрифта, примененного к моему ярлыку.

<Label class="Ubuntu" text="This is a test message" ></Label>

Любая помощь будет более ценной.

1 Ответ

0 голосов
/ 02 июня 2018

Ах, замечательная проблема шрифтов на iOS.К счастью, это легко исправить.

У меня есть целая статья в блоге о том, как использовать шрифты в NativeScript.

Но, чтобы просто ответить на ваш конкретный вопрос, шрифт на самом деле не называется «Ubuntu»;это имя файла.Если вы посмотрите на верхнюю середину изображения вашего шрифта, вы увидите, что имя на самом деле " Ubuntu Gras ".
Ubuntu Gras

Так что вашCSS должен выглядеть следующим образом.

.Ubuntu
{
    font-family:Ubuntu,Ubuntu Gras;
}

Это приводит к тому, что iOS и Android автоматически загружают файл "Ubuntu.ttf", когда они не могут найти уже загруженный шрифт с именем "Ubuntu" всистема загружает шрифты.(Примечание. Физическое имя файла должно всегда быть первым определением.)

Поэтому после загрузки он пытается использовать «Ubuntu» в качестве поиска шрифта;но это может не работать на iOS на некоторых шрифтах (но всегда работает на Android).Итак, поскольку он не может найти имя «Ubuntu», он использует следующее доступное имя шрифта, которое мы так удобно для него предоставили - «Ubuntu Gras».Поскольку шрифт уже был загружен (т.е. из имени «Ubuntu»), то операционная система iOS теперь может найти имя «Ubuntu Gras» и поэтому использует его правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...