仅 1.8M 的开源截图程序 ScreenCapture


ScreenCapture 是开源截图程序,仅一个可执行文件(1.8M)。

  • 多屏幕截图、跨屏幕截图
  • 画椭圆、正圆、矩形、正方形、箭头、标号、直线、画自由路径线条(填充、非填充、不同颜色、不同线框粗细、可调整大小和位置)
  • 马赛克、橡皮擦(矩形、自由路径)
  • 上一步、下一步(历史路径中的图形元素可以调整大小和位置)
  • 保存成文件、保存到剪切板
  • 取景框(支持快捷键复制RGB颜色和HEX颜色)
  • 在新窗口中钉住截图区域
  • 非常快、低内存消耗、低CPU使用率.
  • 非常小、仅一个可执行文件(1.8M),无需安装,无动态链接库.
  • 可以非常容易的集成到其他应用中

近期更新的内容:

  • 问题:截图写入剪切板时,去除不必要的内容
  • 优化:优化内存使用,提升软件运行效率
  • 增强:使用键盘左\右\上\下键控制取景框位置
  • 增强:在拖拽截图时,显示取景框
  • 问题:钉住窗口设置未TopMost
  • 优化:为程序提供ICON图标
  • 问题:在特殊场景下工具条位置不对
  • 问题:去除高亮窗口区域的白边(左下右的白边)
  • 增强:显示截图区域的位置和大小
  • 增强:D3D技术切换为GDI技术以兼容无显卡机器
  • 优化:Ctrl+Z:上一步,Ctrl+Y:下一步
  • 优化:缩小默认的箭头大小

如果你想把这个程序集成到Electron或Node应用中,可以参考下面这段代码

let spawn = require("child_process").spawn;
let child = spawn("./path/to/ScreenCapture.exe")
child.on("close", (code) => {
/// when code is:
/// 0 undefined
/// 1 quit by press close btn;
/// 2 quit by press right mouse btn;
/// 3 quit by press esc keyboard
/// 4 quit when copy rgb color
/// 5 quit when copy hex color
/// 6 quit when save to file
/// 7 quit when save to clipboard
console.log("the quit code is:",code)
});

可以使用AutoHotKey定义自己的快捷键

下载安装AutoHotKey之后,在自己的Startup 目录下创建一个.ahk 文件,内容如下 

/*
C:\Users\[UserName]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\ScreenCapture.ahk
^:Ctrl
!:Alt
+:Shift
#:Win
The hotkey is Ctrl+Alt+A 
*/
^!A::Run "D:\path\to\ScreenCapture.exe"

然后双击运行一下这个.ahk脚本文件,现在就可以按下Ctrl+Alt+A 启动截图应用了。

而且系统重启后,这个快捷键还是可用的。


演示视频:

https://www.zhihu.com/zvideo/1674025250764337152

技术:

这个项目是基于Blend2D开发的项目,用的C++语言和操作系统API,

所以目前还只支持Windows,还不支持Mac

如果有熟悉Mac的小伙伴,欢迎参与到这个项目的开发中来,把它推向Mac平台。

未来:

目前这个项目已经发布了十几个版本,功能还算稳定了

如果你发现了BUG,这段时间我会尽快解决。

功能上还有一些值得优化的点

比如把控制边框粗细的按钮换成滑块等

这类优化,我会在时间充裕的时候做。

 

以上,希望你能喜欢。


相關推薦

2023-08-09

接口。 与此同时,结构上可兼容树莓派3B,并支持基于开源鸿蒙的Orange Pi OS(OH)操作系统。 外观上,Orange Pi 3B比四年前的Orange Pi 3更为小巧,仅为85mm x 56mm x 17mm。搭载瑞芯微RK3566的Orange Pi 3B集成了ARM Mali G52 2EE图形处理器,

2023-12-26

配了寄存器。 编译更多带有可选参数的调用。异常处理程序也被编译。 不支持的调用类型和复态调用点不再退出到解释器。 Rails #blank?和specialized#present?等基本方法都是内联的。 对Integer#*、Integer#!=、String#!=、String#getbyte、

2023-10-27

nHarmony定制研发的Orange Pi OS(OH)即将发布! 日前,迅龙开源鸿蒙的工程师团队已经在搭载RK3566的开发板Orange Pi 3B上完成了Orange Pi OS(OH)对PC的初步适配,这是国内首次将开源鸿蒙操作系统运行在PC设备上,意味着迅龙软件将领先

2023-05-11

。 这一增强功能在 #45369中引入,在处理内存密集型应用程序时提供更好的控制和灵活性。 排序算法性能 默认排序算法已升级为更具自适应性的排序算法,该算法始终稳定且通常具有最先进的性能,它对于简单的类型和顺序

2022-07-12

Dapr 是一个开源、可移植的、事件驱动的运行时,可以帮助开发人员构建在云和边缘上运行的弹性的、微服务的、无状态和有状态应用程序,并且关注于业务逻辑而不用考虑分布式相关的问题。 近日 Dapr 1.8 正式发布,这是自 202

2022-08-20

用非常量全局变量的大部分成本。 @threads 新的默认调度程序 在 Julia 1.3 中引入通用并行任务运行时之前,Julia 就有了用于并行化 for 循环的 @threads 宏。 由于这个历史原因,@threads 一直提供静态调度,以避免意外依赖这种严格

2023-01-06

Pinta 是一个开源的、跨平台的图像绘制与编辑应用程序,其灵感来自于 Paint.NET,但后者仅限于微软 Windows 系统。与开源图像编辑器 GIMP 相比,Pinta 使用起来也更简单。 在 Pinta 2.0 发布一年后, Pinta 2.1 正式发布了,此版本引入

2022-07-12

,包括 Ubuntu 22.04 LTS。 MNT Pocket Reform MNT 是德国一家开发开源硬件和软件的公司,该公司认为未来的数字生活是可持续并且开源的,并且此前曾发布了一台 999 美元起售的 MNT Reform 的笔记本电脑。现在 MNT 又将推出一台名为 Pocket

2024-01-14

Spring Data 是一个用于简化数据库访问,并支持云服务的开源框架,旨在为数据访问提供一个熟悉的、一致的、基于 Spring 的编程模型,同时仍然保留底层数据存储的特殊特性 (traits),使得数据访问技术、关系型和非关系型数据

2023-08-23

Volcano 1.8版本之前,真实负载调度与重调度的指标获取仅支持 Prometheus,从1.8版本开始,Volcano 优化监控指标获取框架,新增 ElasticSearch 监控系统支持,并支持以较小适配工作量平滑对接更多类型监控系统。 关于支持多种监控

2021-11-22

世界上有一个著名的法则叫"奥卡姆剃刀定律",讲的是程序员该如何选择合适的剃刀,来让自己的秀发光滑柔顺有光泽。 其实不是的,该定律主要就是八个字"如无必要,勿增实体"。当一个流程难以支撑当前的业务时,我们

2022-12-22

可最大化 macOS 上的窗口大小。[ IDEA-304577 ] 应用程序服务器配置不会在 IDE 重新启动时丢失。[ IDEA-272575 ] 从外部工具打开项目文件,不再导致 IDE 抛出“仅允许从事件调度线程访问”异常。[ IDEA-301392 ]

2022-11-05

力,提供兼容 MySQL Replication 协议的主从复制能力。 开源地址:[https://github.com/ApsaraDB/galaxysql] 版本说明 梳理下PolarDB-X 开源脉络: 2021年10月,在云栖大会上,阿里云正式对外开源了云原生分布式数据库PolarDB-X,采用全

2023-05-02

56 微信公众号演示 演示帐号:13507083515 / 123456 微信小程序演示 演示帐号:13507083515 / 123456 支付流程演示 MySQL 提升全面讲解 MySQL 架构设计(0.01 元) Nginx 入门到实践 Nginx 中间件(0.01 元) 数据库与中间件的基础必