- Android и кастомные шрифты или «Да здравствует API 26»
- Как было раньше. Краткий обзор
- view.xml
- CustomFontTextView.class
- Но все изменилось в API 26
- Подключение шрифтов в CSS
- Локальные шрифты
- Форматы шрифтов
- Разные начертания шрифтов
- Pocketbook android как настроить стиль шрифта css
- Совет: Работаем со своими шрифтами в Android O
- Добавление ваших шрифтов в проект
- Использование своих шрифтов
- Создание семейства шрифта
- Не забудьте протестировать!
- Заключение
Android и кастомные шрифты или «Да здравствует API 26»
Как было раньше. Краткий обзор
Если было много view где требовались нестандартные шрифты, то мы использовали что-то вроде такого:
view.xml
CustomFontTextView.class
И это я пропустил огромный кусок который отвечает за то, чтобы не писать каждый раз путь к шрифту, а указывать
Ну, или шли на гитхаб и в результате находили Calligraphy (7000 звезд!)
Ни для кого не секрет что этот подход содержал много минусов как в огромном количестве boilerplate кода, так и в том, чтобы сделать это эффективно и где-нибудь не утечь по памяти запрашивая каждый раз Typeface.
Но все изменилось в API 26
Похоже, гугл наконец-то сдался и решил отказаться от навязывания Roboto и сделал удобное подключение сторонних шрифтов, за что ему огромное спасибо.
Линк для тех, кто любит читать в оригинале.
Теперь подключение состоит всего из нескольких несложных шагов:
1. Создаем папку font в res
Resource type выбираем font
2. Перетаскиваем в новую папку все нужные нам в проекте шрифты
3. Создаем файл для семейства шрифтов.
Обратите внимание: я сразу добавил в пример то как должен выглядеть файл, если вы хотите поддерживать и более старые версии Андроида. (Начиная с 14). Если вам повезло и у вас таргет только на супер-новые девайсы, то ваш файл сократится в 2 раза
Ну а дальше остается только наслаждаться сборкой
Использование в TextView
Используем в стилях
И у вас больше не болит голова об эффективности 🙂
Источник
Подключение шрифтов в CSS
Если не вникать в подробности, по быстрому подключить шрифт можно так:
Такой метод вполне работает в большинстве браузеров, но неверен. В данном примере упущено:
- Нет названия шрифта в свойстве local .
- Подключен только один формат шрифта.
- Неправильно настроены начертания.
Локальные шрифты
Правило @font-face src позволяет задать название локального шрифта, т.е. если у пользователя на компьютере уже установлен нужный шрифт, то будет использоваться именно он, при этом существенно увеличится скорость загрузки и отрисовки страницы.
Можно указать несколько названий:
Форматы шрифтов
Сегодня используются четыре формата, рассмотрим их подробнее:
TTF/OTF – работают в большинстве браузеров, кроме IE.
EOT – создан Microsoft, представляет сжатую копию шрифта TTF, поддерживается только в IE.
WOFF – формат представляет собой сжатый шрифт в формате TTF/OTF.
WOFF2 – имеет улучшенное сжатие, по сравнению с первой версией.
Как видно нет единого формата, который поддерживается всеми браузерами, поэтому нужно делать подключение нескольких файлов, браузер сам выберет подходящий формат. Рекомендуется подключать файлы шрифтов по приоритету:
- WOFF2 для современных браузеров.
- WOFF для браузеров, которые не поддерживают WOFF2.
- TTF для устаревших браузерах
- EOT для поддержки IE.
Если в наборе есть не все форматы, их можно получить перекодировкой с помощью сервисов onlinefontconverter.com или convertio.co.
Разные начертания шрифтов
Пример подключения шрифта «Crimson Text» в разных начертаниях:
Источник
Pocketbook android как настроить стиль шрифта css
Краткое описание:
Читай, выделяй текст и создавай заметки в книгах многих форматов.
Ридер PocketBook обладает богатой функциональностью и уникальным, дружественным интерфейсом, обеспечивающим быстрый доступ к функциям изменения размера шрифта, масштаба, цвета текста и фона, настройки полей страницы и многим другим функциям.
Поддерживаются текстовые форматы PDF, DjVu, EPUB, FB2/FB2.zip, FBZ, PB1, TXT, CHM, HTML/HTM/XHTML (минимально), CBZ, CBR, СBТ, RTF/RTF.zip, MOBI, PDB, PRC, DOCX/DOCM (минимально), AZW/AZW3 и аудиокниги в MP3 и MP4 (M4B).
Основные возможности для всех форматов:
— Material Design;
— Расширенные настройки, которые позволяют полностью настраивать ридер под свои предпочтения;
— Тонкая настройка текста (выравнивание, отступы, азбацы, интервал, переносы, размер, шрифт, кодировка);
— Листание страниц с помощью касания, жестом листания или с помощью кнопок громкости;
— Анимация листания (в т.ч. и 3D) с ее настройкой, листание кнопками громкости;
— 3 режима чтения: постраничный режим, режим «две страницы», режим «свиток»;
— Ночная тема оформления;
— Книжные полки (возможность составлять свои подборки книг);
— Отдельные режимы чтения fb2/epub книг;
— Правка метаданных книг;
— PDF reflow (режим масштабирования с подстройкой текста под экран);
— Turbo PDF режим (ускоренное отображение PDF);
— Функция детального поиска;
— Создание заметок (маркер, комментарии, скриншоты) и закладок;
— Экспорт заметок в файл;
— Изменение яркости экрана;
— Блокировка ориентации экрана;
— Быстрый доступ к содержанию и заметкам;
— Легкость навигации по книге;
— Навигация по файловой системе;
— Белые и черные списки путей сканирования;
— Возможность создания на рабочем столе ярлыка для книги;
— Виджеты «текущая книга» и «недавние книги» (последний можно листать);
— Поддержка словарей ABBYY Lingvo, GoldenDict, Fora Dictionary;
— Поддержка переводчика Google Translate;
— Поддержка Adobe DRM;
— Поддержка сетевых библиотек (OPDS-каталоги);
— Доступ к магазину Bookland;
— Поддержка аудиокниг в форматах MP3 и MP4 (M4B) (в одной папке или в zip-архиве), закладки в аудиокнигах;
— Шаринг цитат на ReadRate;
— Сканирование ISBN;
— Синхронизация процесса чтения через Dropbox;
— Свое облако Pocketbook Cloud для хранения книг и синхронизации между разными устройствами места чтения, закладок и заметок;
— Возможность чтения EPUB и PDF через веб-интерфейс облака;
— Функция озвучивания текста (text-to-speech, TTS);
— Версии для Android и iOS (скоро и для E-Ink).
Доп. функции для форматов PDF и DjVu:
— Ручная и автоматическая подстройка полей страницы для максимально комфортного чтения на маленьких экранах;
— Увеличение и уменьшение масштаба при помощи двух пальцев;
— Двойное касание для масштабирования к размеру экрана конкретной части страницы или колонки.
Доп. функции для форматов EPUB, FB2, TXT, RTF:
— Увеличение или уменьшение размера шрифта при помощи двух пальцев;
— Изменение цвета текста и цвета (текстуры) фона — PocketBook поддерживает четыре предустановленные темы (ночная, дневная, сепия и газетная), также можно настроить свою.
Требуется Android: 4.1 и выше
Русский интерфейс: Да
Версия: 4.23.18048.release (4 сборки) с Google Play Market
Версия: 4.21.17970.release Обновление с Google Play
Версия: 4.20.17912.release Обновление с Google Play
Версия: 4.18.17839.release Обновление с Google Play
Версия: 4.17.17813.release (бета) Обновление с Google Play
Версия: 3.21.16694.release Обновление с Google Play
Версия: 3.20.16660 обновление от Google Play Market (gorand39)
Версия: 3.19.16606 обновление от Google Play Market (gorand39)
версия: 3.18.15872 3.18.15872 (2120318)
версия: 3.15.15822 PocketBook Reader (Пост mkizub #81601517)
версия: 3.13.15646 PocketBook Reader (Пост mkizub #79250080)
версия: 3.08.15558 PocketBook Reader (Пост mkizub #78596599)
версия: 2.07.15250 PocketBook Reader (Пост command75 #74831683)
версия: 3.02.15432 (бета для epub3) PocketBook Reader (Пост mkizub #77247198)
версия 3.01.15041 (бета для epub3): PocketBook Reader (Пост mkizub #71747013)
версия: 2.06.15081
PocketBook Reader (Пост command75 #72751269)
версия: 2.05.15036 Сообщение №3346, автор command75
версия: 2.04.15001 Сообщение №3299, автор command75
версия: 2.04.14955 PocketBook Reader (Пост Mukamol #70899195)
версия: 2.02.14899 PocketBook Reader (Пост mkizub #70411042)
версия: 2.02.14868 RC5 PocketBook Reader (Пост mkizub #70194658)
версия: 2.02.14829 RC4 PocketBook Reader (Пост mkizub #69933423)
версия: 2.02.14776 RC3 Сообщение №3052, автор mkizub
версия: 2.02.14523.release (arm) PocketBook Reader (Пост command75 #68015939)
версия: 2.01.13793.release (arm/86) PocketBook Reader (Пост mkizub #62317967)
версия: 2.01.13793 PocketBook Reader (Пост mkizub #62317967)
версия: 2.01.13779 PocketBook Reader (Пост mkizub #62006142)
версия: 2.01.13727 PocketBook Reader (Пост mkizub #61577494)
версия: 2.00.13226 PocketBook Reader (Пост mkizub #56547514)
версия: 2.00.13133 PocketBook Reader (Пост mkizub #55663594)
версия: 1.23.13056 PocketBook Reader (Пост mkizub #55090155)
версия: 1.23.13056 PocketBook Reader (Пост mkizub #55090155)
версия: 1.22.12842 PocketBook Reader (Пост mkizub #52846483)
версия: 1.22.12560 PocketBook Reader (Пост Deniz19 #51300634)
версия: 1.22.12513 PocketBook Reader (Пост mkizub #49945763)
версия: 1.22.12397 PocketBook Reader (Пост mkizub #49031876)
версия: 1.22.12328 PocketBook Reader (Пост mkizub #48464227)
версия: 1.22.12274 PocketBook Reader (Пост mkizub #48154325)
версия: 1.21.11899 PocketBook Reader (Пост Anais10 #45383411)
версия: 1.18.11749 PocketBook Reader (Пост mkizub #44688773)
версия: 1.18.11488 PocketBook Reader (Пост Anais10 #43945774)
версия: 1.18.11174 beta PocketBook Reader (Пост mkizub #43055878)
версия: 1.18.9936 beta PocketBook Reader (Пост mkizub #40440747)
версия: 1.17.9671 PocketBook Reader (Пост mkizub #39672729)
версия: 1.16.9658 PocketBook Reader (Пост mkizub #39614990)
версия: 1.16.9538 beta PocketBook Reader (Пост mkizub #39318290)
Версия 1.15.8340: PocketBook Reader (Пост #36244622)
версия: 1.16.8490 beta PocketBook Reader (Пост mkizub #39268221)
Версия 1.14.8263: PocketBook Reader (Пост #36049284)
Версия 1.13.8186: PocketBook Reader (Пост #35883181)
Версия 1.13.7837 (beta): PocketBook Reader (Пост #35102304)
Версия 1.13.7805 (beta): PocketBook Reader (Пост #35030521)
Версия 1.13.7411 (beta): PocketBook Reader (Пост #34463097)
Версия 1.12.6910: PocketBook Reader (Пост #33372070)
Версия 1.12.6837: PocketBook Reader (Пост #33209808)
Версия 1.11.6799: PocketBook Reader (Пост #33113629)
Версия 1.11.6753: http://4PDA.ru/forum/index.php?showtopic=467013&view=findpost&p=32948737
Версия 1.10.6443: PocketBook Reader (Пост #32210823)
Версия 1.10: PocketBook Reader (Пост #31833057)
Версия 1.9.6229: PocketBook Reader (Пост #31432422)
Версия 1.8.5809: PocketBook Reader (Пост #30183279)
Версия 1.8.5792: PocketBook Reader (Пост #30161853)
Версия 1.7.5770: PocketBook Reader (Пост #30065863)
Версия 1.6.5399: PocketBook Reader (Пост #29140379)
Версия 1.5.4428: PocketBook Reader (Пост #26726692)
Версия 1.4.3802: PocketBook Reader (Пост #25231112)
http://4PDA.ru/forum/dl/post/3443982/PocketBook_Reader_1.4.3785.apk
PocketBook Reader v1.3.3505
http://4PDA.ru/forum/dl/post/3179787/PocketBook_1.2.3256.apkPocket Book v1.1.3099.apk ( 16.99 МБ )
PocketBook v1.0.2794.apk ( 16.46 МБ )
Сообщение отредактировал esleer — 27.08.21, 18:55
Источник
Совет: Работаем со своими шрифтами в Android O
Russian (Pусский) translation by Ellen Nelson (you can also view the original English article)
А вот и первая предварительная версия Android O!
В этой серии мы рассмотрим некоторые из современных функций пользовательского интерфейса, с которыми вы можете начать экспериментировать сегодня, в версии Android O для предварительного ознакомления разработчиками.
В первом совете я показал вам, как настроить свою разработку для поддержки этого раннего предварительного просмотра O, и как создать текст, который автоматически масштабируется в соответствии с текущей конфигурацией экрана. В этом совете мы увидим, как Android O сделает работу с пользовательскими шрифтами беззаботной.
Добавление ваших шрифтов в проект
Вы когда-нибудь хотели выделить отдельный фрагмент текста? Или, может быть, вы были убеждены, что ваш шрифт станет отличным способом добавить в ваше приложение дополнительную индивидуальность?
Хотя есть много преимуществ при использовании пользовательских шрифтов, работа с ними на Android традиционно была болезненным опытом, требуя, чтобы вы либо использовали библиотеку, либо создали пользовательский View .
К счастью, работа с пользовательскими шрифтами в Android будет намного проще, так как пользовательские шрифты станут полностью поддерживаемым типом ресурсов в Android O. Это означает, что добавление пользовательского шрифта в ваше приложение будет таким же простым, как добавление любого другого ресурса, например изображения и текста.
Чтобы следовать этому руководству, вам понадобятся несколько файлов шрифтов, которые вы можете добавить в проект с Android O, который мы создали в первой части.
Android O поддерживает оба формата: .otf (OpenType) и .ttf (TrueType). Существует множество веб-сайтов, предлагающих такие шрифты бесплатно, поэтому потратьте несколько минут на поиск в Google, пока не найдете нужный шрифт.
Поскольку мы просто экспериментируем с новыми функциями Android O, не имеет особого значения, какой шрифт вы используете, но если вы ищете шрифты для использования в релизах вашего приложения, вы всегда должны смотреть условия использования этого шрифта. Только потому, что файл доступен для загрузки, не означает автоматически, что нет ограничений на то, как вы можете использовать и обращаться с этим файлом, поэтому всегда читайте мелкий текст!
Вы также должны задуматься о цели, содержании и целевой аудитории вашего приложения, так как разные шрифты передают разные сообщения. Если вы разрабатываете приложение, помогающее людям заполнять их налоговые декларации, то ваша аудитория с трудом сможет серьезно отнестись к финансовым и юридическим советам в вашем приложении, если оно поставляется со непонятным и странным шрифтом!
Как только вы найдете шрифт, с которым хотите работать, загрузите и разархивируйте его. На этом этапе вы должны проверить имя файла шрифта на наличие недопустимых символов — по сути это, что угодно, что не входит в строчные a-z, 0-9 или символ подчеркивания. Попробуйте использовать любые другие символы и Android Studio выдаст ошибку, как только вы попытаетесь сослаться на этот ресурс.
Так как у вас есть файл(ы) шрифтов, вам надо будет где-то их хранить:
- Правый клик по папке app/res вашего проекта и выберите New > Android resource directory.
- Откройте выпадающее меню и выберите font.
- Введите font в File name.
- Нажмите OK.
- Убедитесь, что вы добавили все файлы шрифта в папку res/font вашего проекта.
- Щелкните правой кнопкой мыши по папке res/font вашего проекта и выберите New > Font resource file.
- Дайте этому файлу имя и нажмите OK.
- Откройте этот XML-файл и определите все различные версии этого шрифта, а также их атрибуты стиля и веса, например:
Переместите файлы вашего шрифта в новую папку res/font.
Использование своих шрифтов
Вы можете применить свой шрифт к тексту, используя новый XML атрибут android:fontFamily :
Вы можете добавить пользовательский шрифт к любым стилям, которые вы создали в приложении.
Если вы хотите использовать свой шрифт программно, когда вы можете извлечь ваш шрифт используя метод getFont(int) , например:
Создание семейства шрифта
Иногда при распаковке папки со шрифтом вы можете обнаружить несколько версий одного и того же шрифта, например, курсивную версию, или шрифты с различной толщиной.
Если вы используете несколько версий одного и того же шрифта, вы можете сгруппировать их вместе в семейство шрифтов. Семейство шрифтов по существу является отдельным XML-файлом, в котором вы определяете каждую версию шрифта со всеми связанными с ним атрибутами стиля и веса.
Чтобы создать семейство шрифтов:
Затем вы можете ссылаться на любой из шрифтов в этом семействе, используя атрибут android:fontFamily . Например:
Не забудьте протестировать!
В то время, как легко увлечься новыми функциями, не заходите за рамки пользовательских шрифтов! Согласованные UI легче в навигации и понимании, а если ваше приложение постоянно переключается между шрифтами, тогда ваши пользователи скорее обратят больше внимание на то, как выглядит ваш текст, а не на то, что о чем он говорит.
Если вы добавляете пользовательские шрифты в свой проект, важно проверить, как этот шрифт отображается в широком диапазоне различных конфигураций экрана, поскольку вашим главным приоритетом всегда должна быть удобочитаемость текста.
Заключение
В этом совете я показала вам, как создать более стильный и уникальный текст, добавив пользовательские шрифты в свои проекты. В заключительном посте этой серии мы переведём наш фокус с текста на изображения, так как я покажу вам, как создавать адаптивные значки запуска, которые автоматически адаптируют свою форму в соответствии с текущим устройством.
В то же время ознакомьтесь с некоторыми из наших других руководств по разработке приложений для Android!
Источник