前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rust截屏

Rust截屏

作者头像
码客说
发布2023-04-27 15:17:07
1.5K0
发布2023-04-27 15:17:07
举报
文章被收录于专栏:码客

前言

查询库

https://crates.io/crates

截屏

https://github.com/nashaofu/screenshots-rs

添加依赖

代码语言:javascript
复制
[dependencies]
screenshots = "0.5.3"

截屏

代码语言:javascript
复制
use screenshots::Screen;
use std::{fs, time::Instant};

fn main() {
    let mut start;
    let screens = Screen::all().unwrap();
    fs::create_dir_all("D:/Test/").unwrap();
    for screen in screens {
        if screen.display_info.is_primary {
            start = Instant::now();
            println!("屏幕: {screen:?}");
            let image = screen.capture().unwrap();
            let buffer = image.buffer();
            fs::write(format!("D:/Test/{}.png", screen.display_info.id), buffer).unwrap();
            println!("运行耗时: {:?}", start.elapsed());
        }
    }

    start = Instant::now();
    // 获取点所在屏幕
    let screen = Screen::from_point(100, 100).unwrap();
    println!("点所在屏幕: {screen:?}");
    let image = screen.capture_area(300, 300, 300, 300).unwrap();
    let buffer = image.buffer();
    fs::write("D:/Test/capture_display_with_point.png", buffer).unwrap();
    println!("运行耗时: {:?}", start.elapsed());
}

构建

Rust通过构建系统Cargo来管理项目的构建。

根据 Cargo.toml 文件中的配置,我们可以使用 Cargo 命令完成 Rust 项目的构建、测试、运行等操作。

常用的 Cargo 命令有:

  • cargo build: 构建项目。
  • cargo run: 运行项目。
  • cargo test: 运行项目的测试。
  • cargo clean: 删除构建产生的所有文件。
  • cargo update: 刷新所有依赖项并更新至最新版本。

除此之外,还有很多其他的 Cargo 命令,可以通过 cargo --help 命令查看。

例如,要运行一个带有 debug 信息的项目,可以执行:

代码语言:javascript
复制
cargo run --debug

如果要为当前项目构建一个发行版本,可以执行:

代码语言:javascript
复制
cargo build --release

生成文档

在 Rust 项目中,可以通过运行 cargo doc 命令来生成文档。这个命令会在项目目录下的 target/doc 目录中生成文档。可以通过运行以下命令在默认浏览器中打开这些文档:

代码语言:javascript
复制
cargo doc --open

默认情况下,该命令会生成包含所有公共项的 HTML 文档。如果需要生成特定库的文档,可以使用 --package 参数和库的名称。例如:

代码语言:javascript
复制
cargo doc --open --package my_library

此命令将生成 my_library 库的文档。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-04-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 截屏
  • 构建
  • 生成文档
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档