#icons #freedesktop #gui

freedesktop-icons-greedy

一个 Freedesktop 图标查找的 crate

3 个版本

0.2.6 2023年7月25日
0.2.5 2023年7月25日
0.2.4 2023年7月25日

22#freedesktop

MIT 许可证

34KB
762

freedesktop-icons-greedy

freedesktop-icons 的一个分支,即使主题没有索引也能解析图标。

use freedesktop_icons_greedy::lookup;

let icon = lookup("firefox")
    .with_greed()
    .find();

lib.rs:

freedesktop-icons

这个 crate 提供了一个 Freedesktop 图标 查找实现。

它公开了一个单个查找函数,可以根据图标的 namethemesizescale 来查找图标。

示例

简单查找

以下代码片段从默认的 'hicolor' 主题中获取一个图标,默认缩放(1)和默认大小(24)。

use freedesktop_icons_greedy::lookup;

let icon = lookup("firefox").find();

复杂查找

如果您对查找有特定要求,可以使用提供的构建函数

use freedesktop_icons_greedy::lookup;

let icon = lookup("firefox")
    .with_size(48)
    .with_scale(2)
    .with_theme("Arc")
    .find();

缓存

如果您的应用程序需要多次重复相同的图标查找,可以使用内部缓存来提高性能。

use freedesktop_icons_greedy::lookup;

let icon = lookup("firefox")
    .with_size(48)
    .with_scale(2)
    .with_theme("Arc")
    .with_cache()
    .find();

依赖关系

~2–10MB
~92K SLoC