#图形 #图像 #显示 #cli界面 #图形学

bin+lib miniview

在(图形)窗口中显示图像。可以通过 CLI 界面调用。

9 个版本 (5 个重大更新)

0.6.1 2023 年 4 月 2 日
0.6.0 2021 年 11 月 23 日
0.5.1 2021 年 5 月 19 日
0.5.0 2021 年 2 月 3 日
0.1.0 2019 年 5 月 21 日

#2117命令行工具

每月下载量 48

Apache-2.0

45KB
560

github crates.io ci docs-rs

miniview

MiniView 是一个简单的图像查看器,旨在在开发和测试期间使用。MiniView 可以作为二进制文件从 CLI 调用,并用作 Rust 库。

要了解它能够做什么,以及它是否符合您的需求,请参阅

MiniView 不建议用作您的首选图像查看器。为此,我建议使用 Emulsion

安装

二进制安装

使用 cargo 安装:cargo install --force miniview

预构建的二进制文件:请参阅 发布

添加库依赖项

使用 cargo-edit 运行 cargo add miniview,或将 miniview 添加为 Cargo.toml 中的依赖项

miniview = "*" # replace `*` with the latest version

用法

CLI 使用说明

用法 Linux 示例 Windows 示例(cmd.exe)
miniview<图像路径> miniview 图像.png miniview 图像.png
miniview--来自-路径<图像路径> miniview--来自-路径图像.png miniview--来自-路径图像.png
miniview--来自-stdin-路径 echo 图像.png|miniview--来自-stdin-路径 echo 图像.png|miniview--来自-stdin-路径
miniview--来自-stdin-字节 cat 图像.png|miniview--来自-stdin-字节 type 图像.png|miniview--来自-stdin-字节

标志 & 选项

标志/选项 描述
--fullscreen 设置窗口为全屏
--allow-window-resizing 允许窗口调整大小(不会调整图像大小!)
--close-after<n> n 毫秒后关闭窗口

键盘快捷键

ESC 退出图像窗口。

库使用说明

use miniview::config::ConfigBuilder;
use std::time::Duration;

fn main() {
    let config =
        ConfigBuilder::from_path(concat!(env!("CARGO_MANIFEST_DIR"), "/resources/plant.jpg"))
            .set_fullscreen(true)
            .set_lazy_window(false)
            .build();

    let controls = MiniView::show(config).expect("unable to create miniview");

    // do some important other work!
    std::thread::sleep(Duration::from_millis(1000));

    let closed = controls.close();
    assert!(closed.is_ok());
}

后端

MiniView支持两种后端:piston-window和pixels。您可以在编译时切换后端。这需要设置Cargo 特性。可以使用backend_piston_window特性启用piston-window后端,使用backend_pixels特性启用pixels后端。

默认后端是pixels。如果没有指定no-default-features,将使用此后端。请注意,默认后端在MacOS上不可用。

下一节提供了如何启用每个后端的示例。一次只能启用一个后端。

后端:piston-window

平台支持

平台 支持 已测试 注意
Linux
MacOS MacOS不允许在主线程之外创建图形窗口。
Windows
...其他piston-window + glutin平台 假设可以在主线程之外创建图形窗口。

配置示例

构建MiniView时,可以使用以下命令使用piston-window后端进行编译:

cargo run --no-default-features --features backend_piston_window 

当将MiniView用作库时,您可以使用

[dependencies.miniview]
version = "*" # replace `*` with the latest version
default-features = false 
features = ["backend_piston_window"]

[dependencies]
miniview = { version = "*", default-features = false, features = ["backend_piston_window"] }

注意:将*中的version = "*"替换为任何支持的版本

后端:pixels

平台支持

平台 支持 已测试 注意
Linux
Windows
MacOS MacOS不允许在主线程之外创建图形窗口。
FreeBSD
DragonflyBSD
NetBSD
OpenBSD
...其他pixels + winit平台 假设可以在主线程之外创建图形窗口,可以添加支持。请提交一个问题

配置示例

构建MiniView时,可以使用以下命令使用pixels后端进行编译:

cargo run --no-default-features --features backend_pixels

当将MiniView用作库时,您可以使用

[dependencies.miniview]
version = "*" # replace `*` with the latest version
default-features = false 
features = ["backend_pixels"]

[dependencies]
miniview = { version = "*", default-features = false, features = ["backend_pixels"] }

注意:将*中的version = "*"替换为任何支持的版本

建议、问题、错误

如果您有任何建议、问题或发现了错误,请随时提交一个问题 📬。

🎸 🎺 🎻 🎷

依赖

~13–28MB
~250K SLoC