开源项目自荐:截图工具(小、快、功能丰富)
我最近开发了一款截图程序,在GitHub开源:
基础的功能该有的都有了,而且有些功能还更好,大家想要什么功能可以提Issue,我看响应的人多,我就做。
当然如果发现了BUG,也请提Issue,谢谢啦。
下面是这个程序的一些特性:
多屏幕截图、跨屏幕截图
画椭圆、正圆、矩形、正方形、箭头、标号、直线、画自由路径线条(填充、非填充、不同颜色、不同线框粗细、可调整大小和位置).
马赛克、橡皮擦(矩形、自由路径)
上一步、下一步(历史路径中的图形元素可以调整大小和位置)
保存成文件、保存到剪切板
取景框(支持快捷键复制RGB颜色和HEX颜色)
非常快、低内存消耗、低CPU使用率.
非常小、仅一个可执行文件,无动态链接库.
可以非常容易的集成到其他应用中.
程序只有一个exe文件,大小1.78M。
大家可以在这里下载试用:https://github.com/xland/ScreenCapture/releases
做这个程序的目的时为了方便开发者把它集成到自己的应用中。
如果普通用户要使用的话,可以下载并安装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
启动截图应用了。
而且系统重启后,这个快捷键还是可用的。
如果你想把这个程序集成到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)
});
集成到其他应用中,也是类似的方法。
下面是演示视频:
https://www.zhihu.com/zvideo/1674025250764337152
技术:
这个项目是基于Blend2D开发的项目,用的C++语言和操作系统API,
所以目前还只支持Windows,还不支持Mac
如果有熟悉Mac的小伙伴,欢迎参与到这个项目的开发中来,把它推向Mac平台。
而且最低是:Windows 10 1607,因为有些系统API,Win7还没有,微软也已经不再为Win7更新了。
未来:
目前这个项目已经发布了十几个版本,功能还算稳定了
如果你发现了BUG,这段事件我会尽快解决。
功能上还有一些值得优化的点
比如把控制边框粗细的按钮换成滑块等
这类优化,我会在时间充裕的时候做。
以上,希望你能喜欢。
开发者朋友们,别忘记给项目点个小星星再走呀。