Подтвердить что ты не робот

Как получить список доступных/установленных шрифтов в android?

В Java я бы сделал что-то вроде:

java.awt.GraphicsEnvironment ge = 
                      java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment();
Font[] fonts = ge.getAllFonts(); 

Есть ли эквивалент Android?

4b9b3361

Ответ 1

Взято с ответа Марка Мерфи в списке рассылки Android Developers:

http://developer.android.com/reference/android/graphics/Typeface.html

Есть только три шрифта: обычный (Droid Sans), засечек (Droid Serif) и monospace (Droid Sans Mono).

Хотя могут быть дополнительные шрифты где-то похоронены в WebKit, они оказались недоступными для разработчиков за пределами WebKit.: - (

Единственными другими шрифтами являются любые TrueType, которые вы связываете с вашим приложением.

Изменить: Roboto - это новый шрифт, который появился с Android 4.0. Вы можете использовать этот проект библиотеки, чтобы использовать его во всех версиях обратно к уровню API 4 https://github.com/mcalliph/roboto-text-view

Ответ 2

Что касается фактического вопроса, вот способ создания списка всех доступных шрифтов:

String path = "/system/fonts";
File file = new File(path);
File ff[] = file.listFiles();

Array ff [] будет содержать все файлы шрифтов.

Ответ 3

В андроиде доступно только 3 шрифта; нормальный (Droid Sans), serif (Droid Serif),  и моноширины (Droid Sans Mono).

Приложения могут включать свои собственные шрифты TrueType, но не могут устанавливать их для использования другими приложениями.

несколько ссылок о шрифтах:

Ответ 4

Android включает в себя 3 базовых шрифта, но, в отличие от iOS, вы можете использовать практически любой шрифт. Вы можете просто вставлять его в свое приложение, вместо того чтобы ограничиваться предустановленным списком шрифтов, подобных Apple (Apple не допускает вставки шрифтов). Довольно удобно.

Обратите внимание, что это для Android, но веб-браузеры (включая основной предустановленный веб-браузер Android) поддерживают все стандартные HTML-шрифты.