18 个版本
0.9.0 | 2024 年 7 月 12 日 |
---|---|
0.8.3 | 2024 年 5 月 28 日 |
0.8.2 | 2024 年 3 月 13 日 |
0.7.2 | 2024 年 3 月 14 日 |
0.6.0-beta.6 | 2023 年 3 月 24 日 |
#222 在 GUI
1,356 每月下载量
用于 2 crates
1MB
176 行
Relm4 图标 - 为您的 gtk-rs 和 Relm4 应用程序提供的图标!
超过 3000 个图标,可在您的应用程序中使用!
用法
1. 查找您的图标 🔍
您可以使用提供的 3000 多个图标或您自己的图标。您可以通过以下方法之一浏览提供的图标:
来自 GNOME 的 图标开发工具包
- 安装 图标库
- 浏览 GNOME 图标资源
- 浏览 fluent 图标库目录
浏览所有提供的图标
有时,图标开发工具包和 Fluent UI 系统图标有重叠的图标名称,因此会添加后缀 "-alt"。
2. 指定您的图标 🖼️
在您的应用程序的 Cargo.toml
文件旁边创建一个名为 icons.toml
的文件
# Recommended: Specify your app ID *OR* your base resource path for more robust icon loading
app_id = "com.my.app"
base_resource_path = "/com/my/app/"
# List of icon names you found (shipped with this crate)
# Note: the file ending `-symbolic.svg` isn't part of the icon name.
icons = ["plus", "minus"]
# Optional: Specify a folder containing your own SVG icons
icon_folder = "my_svg_icons"
3. 添加 Relm4 图标 ✍
relm4-icons = "0.8.0"
4. 加载图标 🛫
将以下内容添加到您的初始化代码中
relm4_icons::initialize_icons();
5. 使用图标 🎉
使用 set_icon_name
和类似方法使用您的图标,例如使用 ButtonExt
、StackPage
、MenuButton
或 Image
。
示例
let button = gtk::Button::default();
button.set_icon_name("plus");
您还可以使用 icon_names
模块来生成额外的编译时图标名称。
use relm4_icons::icon_names;
let button = gtk::Button::default();
button.set_icon_name(icon_names::PLUS);
工作原理
包
- 收集配置文件中指定的所有图标
- 构建包含 仅所选图标 的 gresource 打包
- 将 gresource 文件包含在编译的二进制文件中
- 初始化时加载 gresource 文件
添加新图标
要添加新图标,请将它们移动到 icons
文件夹中,并确保它们的文件名以 -symbolic.svg
结尾。然后运行以下命令
cd update_icons
cargo run
致谢
- GNOME 贡献者为提供这么多出色的图标表示感谢
- gvdb-rs 为提供与纯 Rust 交互的 gresources 的出色 crate 表示感谢
- gtk-rs 为 GTK4 提供出色的 Rust 绑定表示感谢
法律
Relm4 图标的源代码根据 MIT 许可证和 Apache 许可证(版本 2.0)的条款进行许可。
图标
- 位于
icons/icon-development-kit
文件夹中的图标根据 CC0 许可证 的条款进行许可,因此属于公共领域。 - 位于
icons/fluentui-system-icons
文件夹中的图标根据 MIT 许可证 的条款进行许可。
这两种许可证都适用于开源和专有应用程序(不提供保证)。
依赖项
约 15-24MB
约 439K SLoC