# 小木屋自动截图助手 **Repository Path**: silentoak/littlecabin-screenshot ## Basic Information - **Project Name**: 小木屋自动截图助手 - **Description**: 小木屋自动截图助手是一款支持自动检测屏幕变化并截图、手动截图、生成 PPT/Word/PDF 的多功能截图助手,适用于会议记录、教学演示、自动化操作等场景。 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-31 - **Last Updated**: 2025-05-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 📸 小木屋自动截图助手 > **版本**:v0.0.1 > **作者**:Eileen > **邮箱**:[silentoak@163.com](mailto:silentoak@163.com) > **构建日期**:2025.05.31 --- ## 🌟 简介 小木屋自动截图助手 是一款支持 **自动检测屏幕变化截图、手动截图、添加备注并导出为 PPT/Word 的多功能工具**。适用于会议记录、教学演示、自动化操作等场景。 本程序基于 Python + Tkinter 构建,使用 OpenCV 进行图像处理,结合结构相似性(SSIM)算法判断屏幕内容是否变化,并支持全局热键触发截图、区域选择、多显示器适配等功能。 --- ## 📦 功能特性 ✅ 自动截图(根据屏幕内容变化) ✅ 手动截图(支持快捷键 `Ctrl+Alt+Z`) ✅ 区域选择(全屏或自定义区域) ✅ 截图预览与备注编辑 ✅ 导出功能: - 生成带备注的 PPT - 生成 Word 文档 ✅ 支持 DPI 缩放和多显示器环境 ✅ 支持剪贴板复制图像 ✅ 日志记录与配置保存 --- ## 🧰 技术栈 | 模块 | 用途 | | --------------------------------------- | -------------------- | | `Tkinter` | GUI界面框架 | | `OpenCV` | 图像处理与截图 | | `mss` | 多显示器截图支持 | | `skimage.metrics.structural_similarity` | 屏幕内容变化检测 | | `keyboard` / `pyperclip` | 全局热键与剪贴板控制 | | `python-pptx` | PPT生成 | | `python-docx` | Word文档生成 | | `PyInstaller` | 打包为单文件exe | --- ## 📁 项目结构
bash
. ├── main.py # 主程序入口 ├── version.py # 版本信息模块 ├── build.py # PyInstaller打包脚本 ├── image/ # 图标与资源文件 │ └── logo.ico # 程序图标 ├── screenshots/ # 截图输出目录(按日期分文件夹) └── config.json # 用户配置文件
--- ## 🛠️ 安装依赖 在运行前请确保安装以下依赖:
bash
pip install -r requirements.txt
### requirements.txt 示例
txt
opencv-python numpy Pillow tk mss keyboard pyperclip screeninfo python-pptx python-docx reportlab
--- ## ▶️ 使用方法 ### 1. 启动程序
bash
python main.py
或者使用打包后的 `.exe` 文件直接运行。 ### 2. 设置截图区域 点击【选择截图区域】按钮,用鼠标拖动选择一个区域。 ### 3. 手动截图 点击【手动截图】按钮,或使用默认热键 `Ctrl+Alt+Z`。 ### 4. 自动截图(监控) 勾选【自动截图】复选框,设置检测间隔和变化敏感度,程序将自动检测屏幕变化并截图。 ### 5. 添加备注 点击左侧缩略图,在右侧输入备注文字,支持快捷键 `Alt + ↑ / ↓` 切换截图。 ### 6. 导出文件 点击【生成PPT】【生成Word】按钮可导出对应格式的文件。 --- ## 📦 打包说明 使用 [build.py]() 脚本进行打包:
bash
python build.py
该脚本会: * 更新 [version.py]() 中的构建时间 * 打包成单个 [.exe]() 可执行文件 * 创建版本目录并保存源码与资源文件 * 清理临时缓存 --- ## 📝 版本说明 * v0.0.1 (2025.05.31) * 支持预览 * 支持增加说明 * 重新布局UI * 优化DPI适配 --- ## 📜 开源协议 该项目采用 **MIT License** 协议开源,请查看 [LICENSE](vscode-webview://1sreod30ml6bekcii07vrph1p81ma5hpf41qp401lfjk5ao17t01/index.html?id=dd044610-86b5-4127-afc9-9e423736c751&parentId=1&origin=1f71d841-9707-45e8-aad7-053fab84862b&swVersion=4&extensionId=Alibaba-Cloud.tongyi-lingma&platform=electron&vscode-resource-base-authority=vscode-resource.vscode-cdn.net&parentOrigin=vscode-file%3A%2F%2Fvscode-app&purpose=webviewView#LICENCE) 文件了解详情。 --- ## 🤝 贡献指南 欢迎贡献代码、提交 Issue 或 Pull Request!以下是贡献建议: * ✅ 提升 UI/UX 体验 * ✅ 增加更多导出格式(如 Markdown) * ✅ 支持 Linux/macOS 平台 * ✅ 引入更智能的图像识别逻辑 * ✅ 增加定时截图功能 --- ## 📬 联系方式 如有问题或建议,欢迎联系作者: 📧 Email: [silentoak@163.com](mailto:silentoak@163.com) 🌐 网站: [https://www.littlecabin.xyz/](https://www.littlecabin.xyz/) 📱 微信公众号: 小木屋工坊 --- ## 🙌 致谢 --- ## 🙌 致谢 感谢所有开源库的开发者,以及所有参与测试与反馈的朋友! --- ## 📌 最新动态 * 已支持 DPI 缩放适配 * 新增右键菜单功能(查看、拷贝、删除) * 支持中文路径及资源管理 * 支持多显示器环境下的截图 ## 📄 LICENCE MIT License Copyright (c) 2025 Eileen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.