如何将图标资源附加到Rust应用程序?我已经看过它是如何在C中完成的,但我不清楚它在Rust中是如何工作的.这将在Windows上.我知道Linux和OS X的工作方式不同.如果有人对OS X有任何提示,那也很棒.
为您的.exe
文件设置图标的一种简单方法是使用winres crate。首先,将 winres 添加为您的构建依赖项Cargo.toml
:
[target.'cfg(windows)'.build-dependencies]
winres = "0.1"
Run Code Online (Sandbox Code Playgroud)
然后,添加一个构建脚本(build.rs
在您的 旁边命名的文件Cargo.toml
):
[target.'cfg(windows)'.build-dependencies]
winres = "0.1"
Run Code Online (Sandbox Code Playgroud)
请注意,这并没有更新任务栏或标题栏中显示的图标。必须通过您的 GUI 框架完成的设置,例如iced最近添加了一种配置它的方法。
要在 macOS 上设置图标,您需要将可执行文件捆绑到.app
. An.app
实际上是一个目录,而不是一个文件。它看起来像这样:
use std::io;
#[cfg(windows)] use winres::WindowsResource;
fn main() -> io::Result<()> {
#[cfg(windows)] {
WindowsResource::new()
// This path can be absolute, or relative to your crate root.
.set_icon("assets/icon.ico")
.compile()?;
}
Ok(())
}
Run Code Online (Sandbox Code Playgroud)
target/release
macOS 应用程序通常作为.dmg
文件分发。发布脚本可以构建二进制文件,将其捆绑到一个.app
,然后将其捆绑到一个.dmg
,以及一个符号链接 ,/Applications
以便用户通过将其移动到那里来更轻松地“安装”应用程序。
归档时间: |
|
查看次数: |
1315 次 |
最近记录: |