此页面介绍了 Material Design Icons 仓库的技术底层,解释了图标系统是如何在文件和格式级别实现的。它涵盖了字体技术、文件结构以及各种资产如何协同工作以提供图标系统。有关在应用程序中使用图标的信息,请参阅 使用 Material Symbols 和 使用 Material Icons。
该仓库对图标集采用了两种不同的技术方法
Material Icons 使用传统字体技术,每种样式变体都有单独的文件
来源:README.md74-98 font/MaterialIcons-Regular.ttf font/MaterialIconsSharp-Regular.otf font/MaterialIconsRound-Regular.otf
Material Symbols 使用现代可变字体技术
技术优势包括文件大小更小、连续变化、动画支持以及更精细的控制。
来源:README.md50-73 variablefont/MaterialSymbolsRounded[FILL,GRAD,opsz,wght].ttf, variablefont/MaterialSymbolsRounded[FILL,GRAD,opsz,wght].woff2
可变字体包含专门的表,支持变体轴
| 格式 | 扩展 | 主要用于 | 特性 | 仓库位置 |
|---|---|---|---|---|
| TTF | .ttf | 两个系统 | 基础 TrueType 格式 | font/ 和 variablefont/ |
| OTF | .otf | Material Icons | OpenType,具有附加功能 | font/ |
| WOFF2 | .woff2 | Material Symbols | 压缩的网络格式(约小 30%) | variablefont/ |
该仓库为 Material Symbols 提供了 TTF 和 WOFF2 格式,建议将 WOFF2 用于 Web 应用程序,因为它具有出色的压缩效果。
来源:variablefont/MaterialSymbolsRounded[FILL,GRAD,opsz,wght].ttf, variablefont/MaterialSymbolsRounded[FILL,GRAD,opsz,wght].woff2, font/MaterialIcons-Regular.ttf font/MaterialIconsSharp-Regular.otf font/MaterialIconsRound-Regular.otf
该仓库根据图标系统和格式将资产组织到不同的目录中
由于 Material Symbols(较新技术)和 Material Icons(旧系统)采用不同的技术方法,因此该组织严格地将它们分开。
有关资产组织和文件名约定的详细信息,请参阅 资产组织。
图标被映射到私有使用区 (PUA) 的 Unicode 字形编码,以支持基于字体的渲染
.codepoints 文件提供人类可读的图标名称与其 Unicode 字形编码之间的映射。Material Icons 和 Material Symbols 都使用此系统,但它们维护独立的字形编码映射。
有关字形编码如何分配和使用的更多信息,请参阅 字形编码映射。
该仓库提供多种格式的图标资产,以支持不同的平台
| 格式 | 文件扩展名 | 主要用例 | 图标系统 | 位置 |
|---|---|---|---|---|
| TTF | .ttf | 桌面/移动应用 | 两者 | font/, variablefont/ |
| OTF | .otf | 桌面应用 | Material Icons | font/ |
| WOFF2 | .woff2 | Web 应用程序 | Material Symbols | variablefont/ |
| SVG | .svg | Web,设计工具 | 两者 | symbols/, src/ |
| PNG | .png | 位图图形 | Material Icons | png/ |
| XML | .xml | Android 应用 | Material Icons | android/ |
Material Symbols 主要侧重于基于字体的交付(TTF、WOFF2),以利用可变字体功能,而 Material Icons 由于其旧有状态,具有更广泛的格式支持。
来源:README.md66-98 README.md120-135
该仓库通过一个更新系统保持最新,该系统从 Google 的图标服务获取新图标
更新系统负责维护仓库的资产,确保跨文件格式的一致性,并生成必要的映射文件。有关更新系统的更多详细信息,请参阅 更新系统。
两种图标系统代表了不同代的图标技术
| 功能 | Material Icons | Material Symbols |
|---|---|---|
| 字体技术 | 传统字体 | 可变字体 |
| 样式变体 | 5个单独的字体文件 | 3 个可变字体文件 |
| 尺寸优化 | 20-24px 主要尺寸 | 20-48px 光学尺寸轴 |
| 粗细选项 | 仅 Regular | 100-700 粗细轴 |
| 填充控制 | 单独的填充/轮廓文件 | 0-1 填充轴 |
| 渐变控制 | 无 | -25 到 200 渐变轴 |
| 动画 | 有限 | 完整的轴动画支持 |
| 文件大小效率 | 较大(多个文件) | 较小(一个文件,多种变体) |
| 更新状态 | 不再更新 | 积极维护 |
Material Symbols 在技术上比 Material Icons 有了显著的进步,通过可变字体技术提供了更大的灵活性和更小的文件尺寸。
该仓库在 Apache License Version 2.0 下获得许可,这会影响图标在项目中的技术实现方式
请参阅 LICENSE 文件以了解完整的许可条款。
刷新此 Wiki
最后索引时间2025 年 4 月 18 日(941fa9)