6个版本
0.1.5 | 2024年7月23日 |
---|---|
0.1.4 | 2024年7月23日 |
#372 in 文本处理
655 每月下载量
在 pdf-doc 中使用
31MB
403K SLoC
google-fonts
从Google下载和缓存TTF字体。
11,689
字体和 1,708
字体家族。
类似于Android Studio中的可下载字体,以及Web Fonts Google API。
示例
使用几种方法下载字体数据。
use google_fonts::lemonada_variable;
use google_fonts::Font::NotoSansRegular;
use google_fonts::Font::RobotoRegular;
use ttf_parser::Face;
fn main() {
// Get and cache font data with a named function.
let font_data = lemonada_variable().unwrap();
let face = Face::parse(&font_data, 0).unwrap();
eprintln!("Font data: {:?}", face);
// Get and cache font data with an enum variant function.
let font_data = NotoSansRegular.get_with_cache().unwrap();
let face = Face::parse(&font_data, 0).unwrap();
eprintln!("Font data: {:?}", face);
// Get font data without caching by using an enum variant function.
let font_data = RobotoRegular.get().unwrap();
let face = Face::parse(&font_data, 0).unwrap();
eprintln!("Font data: {:?}", face);
}
Crate特性
full
,variable
和 static
Crate特性均可用。
variable
仅启用具有 可变字体技术 的字体。static
仅启用具有 静态字体技术 的字体。full
启用variable
和static
特性。
variable
是默认特性。
可变字体技术较新,更灵活,可以在一个或两个文件中提供样式变化。静态字体技术使用更多的字体文件来完成同样的事情。大多数字体都在 static
特性中。
尽可能选择 variable
特性。
启用 variable
特性可以显著提高构建时间、crate大小和rust-analyzer性能。
文档注释字体图像
从文档中查看字体图像。
依赖项
~4–18MB
~215K SLoC