Skip to content

CAC-Z/AirShot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AirShot 📸

AirShot Logo

一款轻量级、功能丰富的 Windows 截图工具

功能特性安装使用方法快捷键开发许可证


✨ 功能特性

  • 🎯 区域截图 - 自由选择截图区域,支持固定宽高比
  • 🖊️ 丰富的标注工具
    • 矩形、椭圆、箭头
    • 自由画笔
    • 文字标注
    • 序号标记
    • 马赛克/模糊
    • 橡皮擦
  • 📌 钉图功能 - 将截图固定在屏幕上
  • ⏱️ 延时截图 - 支持 1/3/5/7 秒延时
  • 💾 一键保存 - 自定义保存路径和快捷键
  • 📋 复制到剪贴板 - 快速分享
  • 🎨 现代 UI - 简洁美观的悬浮球设计
  • 📐 高 DPI 支持 - 完美适配高分辨率显示器

📦 安装

环境要求

  • Windows 10/11
  • Python 3.8+

从源码安装

# 克隆仓库
git clone https://github.com/CAC-Z/AirShot.git
cd AirShot

# 创建虚拟环境(推荐)
python -m venv env
.\env\Scripts\activate  # Windows

# 安装依赖
pip install -r requirements.txt

# 运行程序
python main.py

使用预编译版本

前往 Releases 页面下载最新版本。

🚀 使用方法

  1. 运行程序后,屏幕上会出现一个悬浮球
  2. 点击悬浮球可展开/收起工具栏
  3. 点击截图按钮或使用快捷键开始截图
  4. 拖动鼠标选择截图区域
  5. 使用工具栏进行标注(可选)
  6. 按快捷键保存或点击保存按钮

⌨️ 快捷键

快捷键 功能
Alt+1 开始截图(默认,可自定义)
Space / 双击 保存截图(默认,可自定义)
鼠标中键 复制到剪贴板
右键 / Esc 取消截图
方向键 微调选区位置
Shift+方向键 大步微调选区
Delete 删除选中的标注

💡 截图和保存快捷键可在设置中自定义

🛠️ 开发

项目结构

AirShot/
├── main.py                  # 程序入口
├── app.py                   # 主应用窗口(悬浮球)
├── requirements.txt         # Python 依赖
├── assets/
│   ├── style.qss            # Qt 样式表
│   └── icon/                # 图标资源
├── core/                    # 核心模块
│   ├── hotkey.py            # 热键注册
│   ├── path.py              # 路径处理
│   ├── save.py              # 文件保存
│   └── logger.py            # 日志系统
└── ui/                      # UI 组件
    ├── selection.py         # 截图选区窗口(主模块)
    ├── selection_mouse.py   # 鼠标事件处理
    ├── selection_keyboard.py# 键盘事件处理
    ├── selection_render.py  # 渲染绘制
    ├── selection_ratio.py   # 宽高比锁定
    ├── selection_eraser.py  # 橡皮擦功能
    ├── selection_text.py    # 文字标注
    ├── toolbar.py           # 工具栏
    ├── annotations.py       # 标注系统
    └── ...

技术栈

  • GUI 框架: PyQt5
  • 图像处理: OpenCV, NumPy
  • 屏幕捕获: pyautogui
  • 热键监听: keyboard

构建可执行文件

pip install pyinstaller
pyinstaller --noconsole --onefile --icon=assets/icon/icon.ico main.py

🤝 贡献

欢迎贡献代码!请遵循以下步骤:

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

📄 许可证

本项目基于 MIT 许可证开源 - 详见 LICENSE 文件。


如果这个项目对你有帮助,请给它一个 ⭐️

About

一款轻量级、功能丰富的 Windows 截图工具

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages