Типы шрифта для андроид

Шрифты для Android

День добрый! В данной статье я хочу обсудить такой важный вопрос как шрифты в Android. Мы создадим свой TextView с возможностью добавлять шрифты в xml и визуально их отображать в превью. Так же решим одну важную проблему – использование шрифтов в списке, без глюков и напрягов для братьев наших меньших, наших Android-устройств.

Дальше я распишу как создать папку assets и добавлять свои шрифты, так что это можно пропустить.

Папка assets нужна для хранения самых разнообразных ресурсов в том числе и шрифтов. Создать ее можно либо вручную в корне main:
\app\src\main\assets
Либо более простым способом

Дальше файлы с форматом .ttf закидываем в assets либо в корень, либо создаем папку fonts, так как assets поддерживает вложенность.

Итак, теперь собственно обратимся к реализации использования шрифтов для TextView, в чистом виде выглядит приблизительно следующим образом:

Когда дело касается более чем пяти TextView, этот процесс начинает раздражать. Но раздражение — это не единственная проблема с которой встречается разработчик, использующий данную конструкцию. Дело в том, что сама обработка файла шрифта и превращение его в объект Typeface довольно трудоемкий процесс, следовательно, использование подобной конструкции в листе вызовет неимоверные глюки.

Данную задачу я предлагаю решить обычным сингтоном. И так создаем что-то похожее:

И устанавливаем шрифты используя синглтон, вот так:

Используя данную конструкцию мы решили вторую проблему, по поводу лагов в листе, но не первую, самую важную, вам все так же нужно находить все текстовые поля и на все снова и снова сетить шрифты, писать отдельные методы и терять нервные клетки. Еще одна проблема в том, что в привью — стандартный шрифт, следовательно ширину, высоту своего шрифта. вы можете увидеть только на живом девайсе или эмуляторе, это очень не удобно.

Введу выше указанных проблем мы сейчас напишем свой TextView с блэкджеком и шрифтами.

Первым делом создаем класс наследник обычного TextView с конструкторами:

Дальше создаём в папке values файл attrs.xml

и создаем файл с названием attrs.xml, после создания он должен выглядеть примерно следующим образом:

В нем создаем следующий блок кода:

Дальше возвращаемся в наш класс CustomFontsTextView и пишем вот такой метод:

Вот собственно и все. Теперь нужно перебилдить проект, чтобы у вас появились кастомные атрибуты. После этого отправляемся в xml файл нашей активити и пишем:

В привью мы увидим уже полностью готовые текстовые поля с нашими шрифтами.


Обращаться к нашим кастомным текстовым полям лучше как к обычному TextView, по стандартной форме:

Источник

Какой шрифт по умолчанию в Android?

начиная с API 16, Jellybean Roboto был представлен как доступное семейство шрифтов для использования. Увидеть «новое» в Android 16 здесь.

задание android:fontFamily=»sans-serif» (Roboto в API 16+) на TextView по умолчанию fontFamily на TextView ?

С материал дизайн Типография сайт:

» Roboto и Noto являются стандартными шрифты на Android и Chrome.»

«Roboto-это семейство шрифтов без засечек, разработанное Google как системный шрифт для своей мобильной операционной системы Android.»

Я не вижу в документах, что по умолчанию fontFamily из Android есть. Видеть литература:

  • https://developer.android.com/reference/android/R.attr.html#fontFamily
  • допустимые значения для android: fontFamily и что они отображают?
  • https://developer.android.com/about/versions/android-4.1.html#Fonts
  • http://alvinalexander.com/photos/android-roboto-fonts-examples

1 ответов

нет документации по d.android.com для фамилий шрифтов. Однако, если вы посмотрите на AOSP, шрифты по умолчанию загружаются в android.graphics.* . The FontListParser загружает шрифты по умолчанию от /system/etc/fonts.xml (на Android 5.0+) или /system/etc/system_fonts.xml (Android 4.1). Шрифты по умолчанию загружаются в шрифт#init.

два XML-файла имеют некоторую документацию. Первый шрифт-шрифт по умолчанию. Вы можете вытащить /system/etc/fonts.xml с вашего устройства. Производитель устройства или пользовательский ROM может изменить системные шрифты по умолчанию.

Читайте также:  Launcher theme для android

шрифты.в XML (API 21+)

Примечание: это более новая (L) версия конфигурации системного шрифта, поддерживая более богатый выбор веса. Некоторые приложения будут ожидать старше версия, поэтому, пожалуйста, держите system_fonts.xml и fallback_fonts.XML в синхронизации с любыми изменениями, даже если framework будет только читать этот файл.

все шрифты withohut имена будут добавлены в умолчанию список. Шрифты выбраны основываясь на совпадении: полный языковой тег BCP-47, включая скрипт, затем просто языка, и, наконец, порядок (первый шрифт, содержащий символ).

заказ возникновения также tiebreaker для соответствовать веса. Это почему 900 вес робото предшествовать 700 весами — мы предпочитайте первое, когда запрашивается вес 800. С смелые пролеты эффектно добавьте 300 к весу, это обеспечивает что 900 смелейшее в паре с на 500 веса, обеспечивая достаточный контраст.

system_fonts.в XML (API 16-20)

в этом файле перечислены семейства шрифтов, которые будут использоваться по умолчанию для всех поддерживаемых символов. Каждая запись состоит из семейства, различных имен, которые поддерживаются этим семейством, и до четырех шрифтов. Файлы шрифтов перечислены в порядке стилей, которые они поддержка: обычный, жирный, курсив и жирный курсив. Если в списке меньше четырех стилей, то стили без связанного файла шрифта будут поддерживаться другими файлами шрифтов, перечисленными в списке.

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

любой глиф, который не обрабатывается системными шрифтами, вызовет поиск резервных шрифтов. Резервные шрифты по умолчанию задаются в файле / system/etc / fallback_fonts.XML и там необязательный файл, который может быть предоставлен поставщиками для указания других резервных шрифтов в /поставщиков/и т. д./fallback_fonts.XML.

если вы разбираете шрифты.xml-файл, вы можете найти, какое семейство шрифтов использует какой шрифт (см. здесь):

Источник

Как изменить шрифт на Android и ничего не сломать

Изменение шрифта — стандартная возможность Android. Производители мобильных устройств предлагают пользователям разные инструменты для её применения. На большинстве смартфонов средствами системы регулируется только размер букв. Однако почти любой девайс можно кастомизировать альтернативными способами.

Зачем менять шрифт на Android

Зачастую пользователями движет стремление придать мобильному гаджету индивидуальный стиль, уйдя как можно дальше от шаблонного дизайна Android или другой оболочки. Но иногда задача поменять шрифт на Android становится необходимостью — например, если установленный по умолчанию размер букв не позволяет читать с экрана из-за проблем со зрением.

Обычно у системного шрифта можно изменить 4 параметра:

  • семейство — например, по умолчанию на устройстве стоит Roboto, а вы хотите Arial или Comic Sans;
  • начертание — прямое или наклонное (курсив);
  • насыщенность — обычный, полужирный или жирный;
  • кегль (размер букв).

Семейство, начертание, насыщенность и другие свойства конкретного шрифта записаны в его файле. Размер же меняется средствами операционной системы.

Замена шрифта в системе

Возможности кастомизации шрифтов зависят от моделей и производителей телефонов. На одних такая функция предусмотрена “с завода”, на других — нет. Владельцам устройств, которые относится ко второй группе, чаще всего приходится решать этот вопрос с помощью сторонних приложений.

Использование специальных возможностей

В настройках всех версий Андроид есть раздел со специальными возможностями, который позволяет изменить размер шрифта.

Как это сделать:

  1. Откройте настройки Android.
  2. Перейдите в раздел «Экран» («Дисплей»).
  3. Нажмите на пункт «Размер шрифта».
  4. Выберите одно из представленных значений, ориентируясь на пример текста.

Настройка будет применена ко всем текстовым элементам, которые есть в интерфейсе прошивки: названиям приложений, пунктам меню, системным сообщениям и т. д.

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

Настройки оболочки

Свободно переключаться на другие предустановленные в систему шрифты могут владельцы телефонов Samsung. Для этого:

  1. Откройте системное приложение «Настройки».
  2. Перейдите в раздел «Дисплей».
  3. Выберите пункт «Размер и стиль шрифта».
  4. Нажмите «Стиль шрифта».

На экране появится список шрифтов, которые можно установить в качестве системного. Внизу также есть ссылка «Загрузить шрифты», нажатие на которую отправит вас на страницу магазина с дополнительными вариантами. Правда, все они платные — по свободной лицензии распространяется только Samsung Sans.

Читайте также:  Android studio стандартные иконки

На телефонах Samsung Galaxy до версии Android 8.0 работает альтернативный способ добавления бесплатных шрифтов. Шрифты FlipFont в виде APK-файлов (образцы можно найти в сети) устанавливаются как обычные приложения. После установки они становятся доступны для выбора.

На Android 8 и 9 этот способ уже не работает, поэтому приходится использовать более сложный:

  1. Установите приложение Theme Galaxy. На телефоне появится две иконки — Theme Galaxy и «Темы».
  2. Запустите Theme Galaxy и дайте приложению необходимые разрешения.
  3. Затем запустите «Темы».
  4. Перейдите на вкладку «Шрифты».
  5. Выберите значение Cyrillic вместо All, чтобы в списке отображались только шрифты, которые поддерживают кириллицу. Всё это — бесплатные варианты из сервиса Google Fonts.
  6. Выберите понравившийся шрифт и нажмите «Скачать», а затем — «Установить».
  7. Перезагрузите телефон.

Установленный шрифт не отображается в системе сразу. Он добавляется в список, доступный по пути «Настройки» — «Дисплей» — «Размер и стиль шрифта». Уже отсюда вы можете установить его в качестве системного.

Встроенные возможности для замены стандартного шрифта есть и в пользовательском интерфейсе EMUI, который используется на телефонах Huawei.

Как это сделать:

  1. Найдите на рабочем экране стандартное приложение «Темы».
  2. Коснитесь его и держите палец до появления контекстного меню.
  3. Перейдите в раздел «Стиль текста».
  4. Выберите один из шрифтов, представленных в каталоге.

Кстати, вы можете добавить в каталог «Темы» свой вариант. Для этого сначала загрузите в память телефона понравившийся шрифт в формате TTF. Затем:

  1. Запустите приложение «Темы».
  2. Перейдите на вкладку «Редактор».
  3. Выберите пункт «Создать шрифт».
  4. Нажмите на опцию «Выберите файл шрифта».
  5. Укажите файл в формате TTF, который вы сохранили в памяти телефона.
  6. Приложение покажет стиль нового шрифта. Нажмите «Следующий шаг», чтобы перейти к его установке.
  7. Задайте имя для шрифта и нажмите «Сгенерировать».
  8. Для завершения процесса установки нажмите «Открыть Huawei Themes App».
  9. После запуска приложения «Темы» перейдите на вкладку «Я».
  10. Выберите пункт «Мои стили текста».
  11. Найдите добавленный шрифт и нажмите «Применить».

На телефонах Xiaomi порядок изменения шрифта зависит от версии MIUI. На последних сборках официальным считается такой способ:

  1. Откройте системное приложение «Настройки».
  2. Перейдите в раздел «Дополнительно».
  3. Нажмите на пункт «Шрифт».
  4. Выберите начертание из предложенных или нажмите на пункт «Офлайн» и добавьте свой шрифт.

Вы можете добавить в систему любой шрифт. Для этого должны быть соблюдены всего два условия: файл шрифта должен иметь формат MTZ и находиться в каталоге /Miui/theme.

Чтобы не заморачиваться поиском шрифтов вручную, используйте альтернативный способ:

  1. Запустите приложение «Темы».
  2. В поисковой строке напишите moby.
  3. Нажмите «Посмотреть все».
  4. Выберите понравившийся шрифт, загрузите его и примените для системы (требуется перезагрузка).

Этот способ хорош тем, что вам не нужно беспокоиться о формате шрифта и месте его сохранения — приложение «Темы» показывает только совместимые с системой варианты.

Использование сторонних приложений

Возможность замены шрифтов есть в некоторых лаунчерах — приложениях, которые позволяют кастомизировать рабочий стол Android, виджеты, экран блокировки и некоторые иконки. Однако у этого способа есть минус. Дело в том в том, что опции лаунчеров применяются не ко всей системе. Из-за этого шрифты будут заменены лишь частично. Например, в системных настройках останется стандартный стиль.

Если вы хотите полностью заменить шрифт на Android, используйте специальные программы. Например, самую популярную для таких задач iFont:

  1. Скачайте и установите из Play Market бесплатное приложение iFont.
  2. С помощью фильтра языков выберите шрифты, которые поддерживают кириллицу.
  3. Выберите шрифт, который вам нравится. Нажмите на него. Откроется окно предварительного просмотра.
  4. Выберите стиль начертания и нажмите «Скачать».
  5. После загрузки файла со шрифтом нажмите «Установить».
  6. Перейдите в «Настройки» — «Дисплей» — «Шрифт» и выберите новый стиль.

Единственный недостаток приложения iFont в том, что для работы на большинстве устройств ему требуется доступ к файловой системе Android (ROOT-права). Заменить шрифт без него можно только на фирменных оболочках Samsung и Huawei.

Если вам не нравятся шрифты, представленные в базе iFont, загрузите свои варианты. На вкладке «Мой» есть раздел «Мои шрифты». Через него открывается проводник, который позволяет указать на файл, предварительно сохранённый в памяти телефона.

Читайте также:  Лучшие беспроводные наушники tws для андроид

Аналогичную функциональность имеет приложение HiFont. Но и здесь вы столкнетесь с ограничениями: без ROOT-доступа заменить шрифты можно только на телефонах Samsung и некоторых моделях Huawei. На устройствах других производителей требуется доступ к файловой системе.

Замена системных шрифтов

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

Произвести замену можно с помощью любого файлового менеджера, который умеет работать с системными файлами (например, Root Browser). А шрифт должен быть в сохранен в формате TrueType Font (TTF).

Порядок действий:

  1. Запустите файловый менеджер на Android.
  2. Перейдите в папку /system/fonts.
  3. Найдите стандартный шрифт Roboto-Regular.ttf.
  4. Сделайте копию системного шрифта или переименуйте его — например, так: Roboto-Regular.ttf.old.
  5. Перенесите в каталог /system/fonts шрифт в формате TTF, который вы хотите установить.
  6. Переименуйте его в Roboto-Regular.ttf.
  7. Выставите для нового файла Roboto-Regular.ttf права доступа как на скриншоте и сохраните изменения.
  8. Перезагрузите устройство.

При следующем запуске в системе отобразится другой шрифт, однако в некоторых местах могут оставаться части старого. Чтобы избавиться от них, замените другие шрифты из семейства Roboto: Roboto-Bold.ttf, Roboto-Italic.ttf и Roboto-BoldItalic.ttf.

Работа со шрифтами в отдельных приложениях

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

WhatsApp

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

  1. Запустите WhatsApp.
  2. Откройте главное меню — оно вызывается нажатием на кнопку с тремя точками в правом верхнем углу.
  3. Перейдите в «Настройки».
  4. Откройте раздел «Чаты».
  5. Нажмите на пункт «Размер шрифта».
  6. Выберите значение параметра: маленький, средний или большой шрифт. Шрифт в интерфейсе приложения останется прежним. Изменится только размер букв в чатах.

Особенность мессенджера WhatsApp в том, что вы можете форматировать текст в диалогах.

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

  • Чтобы написать текст жирным шрифтом, оберните его знаком * с двух сторон. Например, *CompConfig*. После отправки сообщения текст между звёздочками станет жирным.
  • Для добавления курсива оберните слово или фразу нижним подчёркиванием _. Например, _Читайте нас_. Важно, чтобы перед первым нижним подчёркиваением и после второго был пробел. Форматирование применяется после отправки сообщения.
  • Для создания зачёркнутого текста используйте знак тильды

. Принцип аналогичный — оборачиваете слово или фразу с двух сторон и отправляете сообщение.

Ещё одна возможность — добавление в чат моноширинного начертания, которым часто пользуются разработчики. В WhatsApp доступен шрифт FixedSys. Чтобы применить его к тексту, оберните фрагмент в обратные одинарные кавычки. Вот так: «` Почувствуй себя разработчиком«` .

«ВКонтакте»

В официальном приложении соцсети «ВКонтакте» по умолчанию можно изменить только размер шрифта:

  1. Откройте главное меню.
  2. Перейдите «Настройки».
  3. Откройте раздел «Основные».
  4. Нажмите на пункт «Размер шрифта».
  5. Выберите размер — маленький, обычный или крупный.

Изменения сохраняются автоматически. Размер шрифта применяется ко всем элементам интерфейса официального приложения «ВКонтакте».

Instagram

В Instagram на Андроид вообще нет никаких настроек для управления шрифтами. К приложению применяется тот стиль, который установлен в системе по умолчанию. Зато в Инстаграме есть другая скрытая фишка — ее используют для стильного оформления описания аккаунта и постов. Чтобы воспользоваться этой возможностью, понадобится приложение Font for Intagram — Beauty Font Style.

  1. Установите из Play Market приложение Font for Intagram — Beauty Font Style.
  2. Запустите его и напишите в окне редактора текст.
  3. Выберите стиль его отображения.
  4. Выделите и скопируйте результат.
  5. Запустите Instagram.
  6. Вставьте обработанный фрагмент текст в информацию об аккаунте или пост.
  7. Сохраните изменения.

Instagram будет показывать надпись в том виде, в котором вы её вставили. Это отличная возможность для создания привлекающих внимание подписей и придания стиля вашему аккаунту.

Источник

Оцените статью