Как использовать нелатинские языки для загружаемых шрифтов Android?

Прочитав документацию по Google Fonts API для Android, я успешно добавил различные веса шрифта, помимо обычного и жирного шрифта. Но загруженный шрифт не отображается для нелатинских символов. Разницу можно увидеть между нелатинскими буквами (например, кириллицей) и правильно отображаемой латиницей (например, числа и знаки препинания).

Я даже пытался скопировать веб-версию API, примерно так:

<?xml version="1.0" encoding="utf-8"?>
<font-family
    xmlns:app="http://schemas.android.com/apk/res-auto"
    app:fontProviderAuthority="com.google.android.gms.fonts"
    app:fontProviderPackage="com.google.android.gms"
    app:fontProviderQuery="name=Montserrat&amp;subset=cyrillic"
    app:fontProviderCerts="@array/com_google_android_gms_fonts_certs">
</font-family>

но ничего не произошло, потому что subset не является допустимым ключевым словом.

Есть ли способ указать, какие сценарии должны быть включены, как в веб-версии?

0 ответов

Пока не поддерживается. Для применения кириллицы необходимо использовать пользовательские шрифты, поддерживающие символы кириллицы. Поместите их папку 'font' и получитеResourcesCompat.getFont(context, R.font.myfont).

Теперь Google Fonts поддерживает нелатинские символы для загружаемых шрифтов. Я протестировал это на этом образце проекта с 29.0.0 инструменты сборки.

Другие вопросы по тегам