Material Symbols
Material Symbols — это набор иконографических символов с открытым исходным кодом, разработанный компанией Google в рамках дизайн-системы Material Design. Представляет собой эволюцию шрифтовых иконок Material Icons, предлагая более гибкую и настраиваемую систему векторных значков для использования в веб-интерфейсах, мобильных приложениях и других цифровых продуктах. В отличие от предшественника, Material Symbols поддерживают несколько визуальных стилей (вариаций толщины, заполненности, градации и размера) в рамках одного файла, что достигается за счёт использования технологии вариативных шрифтов (variable fonts).
История
Предпосылки создания
Первая версия иконок Material Design, известная как Material Icons, была представлена Google в 2014 году вместе с запуском самой дизайн-системы. Изначально иконки поставлялись в виде набора статических SVG-файлов и шрифтовых глифов, каждый из которых имел фиксированный стиль (например, «Filled» или «Outlined»). Для использования другого стиля требовалось подключать отдельный шрифт или файл, что усложняло разработку и увеличивало объём загружаемых данных.
Анонс и выход
В апреле 2022 года Google анонсировала Material Symbols как часть обновлённой версии Material Design 3. Основным нововведением стала поддержка вариативных шрифтов, что позволило объединить все стили (Filled, Outlined, Rounded, Sharp) в одном файле. Релиз состоялся в том же году, иконки стали доступны через Google Fonts, репозиторий GitHub и npm-пакет.
Классификация и стили
Material Symbols включают четыре основных визуальных стиля, каждый из которых может быть настроен по четырём осям вариативности:
Стили (вариации)
- Filled — заполненные иконки, наиболее насыщенные и контрастные.
- Outlined — контурные иконки, с тонкими линиями и пустым внутренним пространством.
- Rounded — скруглённые иконки, с мягкими углами и линиями.
- Sharp — острые иконки, с чёткими углами и минималистичным дизайном.
Оси вариативности
Каждый стиль может быть изменён по четырём параметрам:
- Weight (толщина) — от 100 (тонкий) до 700 (жирный).
- Grade (градация) — регулирует насыщенность и контрастность, от -25 до 200.
- Fill (заполненность) — от 0 (контурный) до 1 (полностью заполненный).
- Optical Size (оптический размер) — автоматически подстраивает детализацию под размер шрифта (от 20 до 48 пикселей).
Устройство и технические характеристики
Форматы поставки
Material Symbols распространяются в нескольких форматах:
- Вариативный шрифт (Variable Font) — один файл (например,
MaterialSymbolsOutlined[FILL,GRAD,opsz,wght].ttf), содержащий все стили и оси. Поддерживается современными браузерами (Chrome, Firefox, Safari, Edge). - Статические шрифты — отдельные файлы для каждого стиля и фиксированного значения оси (например,
MaterialSymbolsOutlined-400.ttf). - SVG-файлы — отдельные векторные изображения для каждого значка в каждом стиле.
- React-компоненты — библиотека
@material-symbols/react-*для использования в проектах на React.
Количество иконок
По состоянию на 2024 год набор включает более 2500 уникальных значков, охватывающих широкий спектр тем: интерфейсные элементы, транспорт, медицина, образование, бизнес, погода, эмоции и другие.
Именование
Каждый значок имеет уникальное имя на английском языке, записанное в snake_case (например, add_circle, home, settings). Имена соответствуют семантике иконки и не зависят от стиля.
Применение
Веб-разработка
Material Symbols используются в веб-интерфейсах через подключение шрифта из Google Fonts или локальную установку. Пример подключения через CSS: ``css @import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200'); ` После этого иконки вставляются как текст с классом .material-symbols-outlined: `html <span class="material-symbols-outlined">home</span> ``
Мобильные приложения
Для Android и iOS используются соответствующие библиотеки:
- Android:
com.google.android.material:material-icons-extended(Gradle-зависимость). - iOS:
MaterialSymbols(Swift Package Manager или CocoaPods).
Дизайн-макеты
Иконки доступны в Figma, Sketch и Adobe XD через официальные плагины или библиотеки компонентов Material Design.
Преимущества и недостатки
Преимущества
- Гибкость: одна иконка может быть отображена в любом стиле без загрузки дополнительных файлов.
- Производительность: вариативный шрифт уменьшает количество HTTP-запросов и общий размер загружаемых данных по сравнению с набором статических SVG.
- Открытый исходный код: лицензия Apache 2.0 позволяет свободно использовать, модифицировать и распространять иконки.
- Актуальность: набор регулярно обновляется, добавляются новые значки.
Недостатки
- Зависимость от браузера: вариативные шрифты не поддерживаются в Internet Explorer и некоторых старых версиях браузеров.
- Сложность настройки: для точного управления осями требуется понимание CSS-свойств вариативных шрифтов.
- Ограниченная кастомизация: изменение формы иконки (например, добавление собственных элементов) требует перехода на SVG-редактор.
Примеры использования
Material Symbols применяются в таких продуктах Google, как Gmail, Google Drive, Google Maps, а также в сторонних проектах: веб-приложениях, мобильных играх, образовательных платформах и корпоративных системах. Например, значок search используется в строке поиска, menu — в гамбургер-меню, close — для кнопки закрытия.
Интересные факты
- Набор Material Symbols является наследником более старого набора Material Icons, который был выпущен в 2014 году и содержал около 900 иконок.
- Технология вариативных шрифтов, лежащая в основе Material Symbols, была впервые представлена в спецификации OpenType 1.8 в 2016 году.
- Google предоставляет онлайн-инструмент «Material Symbols & Icons» для поиска и скачивания иконок в различных форматах и стилях.
Критика
Некоторые разработчики отмечают, что использование вариативных шрифтов может приводить к неожиданному поведению в старых браузерах, а также к увеличению времени загрузки страницы при неправильной настройке. Кроме того, отсутствие поддержки анимации внутри шрифта (например, вращения или пульсации) ограничивает динамическое использование иконок без дополнительного CSS или JavaScript.
Источники
- Google Material Design Documentation — «Material Symbols» (2022).
- Google Fonts — «Material Symbols Guide» (2023).
- Репозиторий GitHub «google/material-design-icons» (2014–2024).
- Статья «Introducing Material Symbols» на блоге Google Design (апрель 2022).
- Спецификация OpenType 1.8 (Microsoft, 2016).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →