Skip to content
fslong520Public

About

绘影-网页快速绘图

Resources

Stars

5 stars

Watchers

0 watching

Forks

Repository files navigation

🎨 WebSketch - 绘影

在任意网页上绘图、标注、截图,支持对象级编辑与旋转

License Chrome Web Store Manifest V3

WebSketch 是一款功能强大的 Chrome 浏览器扩展,让你能够在任何网页上进行自由绘图、标注和截图。无论是教学演示、设计评审还是内容标注,都能轻松胜任。

✨ 特性

✨ 绘图工具

  • 画笔工具 - 自由绘制,流畅的线条体验
  • 橡皮擦 - 精确擦除不需要的内容
  • 矩形/圆形 - 支持填充和描边模式,Shift 约束正方形/正圆
  • 直线/箭头 - 清晰的指向标注,Shift 约束 45° 角度
  • 文字输入 - 支持中文输入法,即时编辑
  • 计数圆圈 - 自动递增数字标注,flameshot 风格

🎯 高级编辑功能

  • 对象级选择 - 每个元素独立可选,精准编辑
  • 拖拽移动 - 手形工具轻松调整位置
  • 旋转功能 - 按住 Shift 键旋转任意对象
  • 撤销/重做 - 50 步历史记录,随时回退

🎨 自定义选项

  • 预设颜色面板 - 10 种常用颜色一键选择
  • 自定义颜色 - 支持任意颜色选择
  • 取色器 - 从网页任意位置取色
  • 线条粗细 - 多种笔触宽度可选
  • 虚线模式 - 所有工具支持虚线样式
  • 填充模式 - 矩形/圆形可选填充或描边

📸 截图功能

  • 先绘图后截图 - 在网页上绘制内容后,选择区域截图
  • 包含绘图内容 - 截图自动合成网页背景和绘图内容
  • 区域选择 - 拖拽选择任意矩形区域,实时显示尺寸
  • 自动保存 - 选择区域后自动下载 PNG 图片

📐 辅助工具

  • 网格辅助线 - 50px 间距网格,自适应对比度,任何背景可见
  • 端点吸附 - 自动吸附到图形端点和网格交叉点,精准定位
  • 快捷键支持 - 提升操作效率

🚀 安装

方法一:从 Chrome Web Store 安装(推荐)

即将上线,敬请期待!

方法二:开发者模式安装

  1. 下载源码

    git clone https://github.com/fslong520/WebSketch.git
    cd WebSketch
  2. 可选:生成可直接安装的目录和 ZIP Windows PowerShell:

    .\build.ps1

    macOS / Linux:

    ./build.sh

    构建完成后会生成:

    • dist/chrome-extension/:给 Chrome 的“加载已解压的扩展程序”直接选这个目录
    • dist/websketch-v版本号.zip:打包好的发布文件
  3. 加载扩展

    • 打开 Chrome 浏览器
    • 访问 chrome://extensions/
    • 开启右上角的「开发者模式」
    • 点击「加载已解压的扩展程序」
    • 选择项目根目录,或者选择 dist/chrome-extension/
  4. 开始使用

    • 打开任意网页
    • 点击工具栏中的 WebSketch 图标
    • 在弹出的面板里点击「开启绘图」
    • 开始绘图

📖 使用指南

基本操作

操作 说明
点击图标 打开插件面板
选择工具 点击工具栏图标切换工具
调整颜色 点击颜色选择器或预设色块
调整粗细 使用滑块调整线条宽度
撤销操作 点击撤销按钮或按 Ctrl+Z
清空画布 点击清空按钮

快捷键

快捷键 功能
B 画笔工具
E 橡皮擦
R 矩形工具
C 圆形工具
L 直线工具
A 箭头工具
T 文字工具
H 手形工具(选择/移动/旋转)
S 截图工具
G 切换网格显示
Ctrl+Z 撤销
Ctrl+Y 重做
Delete 删除选中对象
ESC 取消当前操作

高级技巧

🔄 旋转对象

  1. 选择手形工具(H)
  2. 点击要旋转的对象
  3. 按住 Shift 键
  4. 水平拖拽鼠标即可旋转
  5. 松开 Shift 键切换回拖拽模式

🎨 填充模式

  1. 选择矩形或圆形工具
  2. 点击工具栏的「填充」按钮
  3. 绘制时会自动填充颜色

⋯ 虚线模式

  1. 点击工具栏的「虚线」按钮
  2. 所有后续绘制都会使用虚线样式

📸 区域截图(含绘图内容)

  1. 先使用绘图工具在网页上绘制内容
  2. 点击截图按钮(S)
  3. 画布保持可见,拖拽选择要截图的区域
  4. 松开鼠标自动保存截图(包含网页背景和绘图内容)
  5. 按 ESC 取消截图

🏗️ 技术架构

websketch/
├── manifest.json              # 扩展配置文件
├── background/
│   └── background.js          # 后台服务(截图等 API 调用)
├── content/
│   ├── content.js             # 内容脚本(主要逻辑)
│   └── content.css            # 工具栏样式
├── popup/
│   ├── popup.html             # 弹出界面
│   ├── popup.css              # 弹出界面样式
│   └── popup.js               # 弹出界面逻辑
└── assets/
    └── icons/                 # 扩展图标

核心技术

  • Chrome Extension Manifest V3 - 最新的扩展标准
  • Canvas 2D API - 高性能绘图引擎
  • 对象系统设计 - 统一的对象管理和编辑
  • 消息传递机制 - Content Script 与 Background 通信
  • 事件处理优化 - 解决输入框焦点、事件冒泡等问题

🎯 应用场景

  • 📚 教育教学 - 在线课程标注、板书演示
  • 💼 工作汇报 - 设计评审、需求标注
  • 🎨 设计草图 - 快速原型、概念验证
  • 📝 内容批注 - 网页截图标注、反馈收集
  • 🖼️ 图片编辑 - 简单绘图和标注

🤝 贡献

欢迎提交 Issue 和 Pull Request!

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

📝 更新日志

v1.3.0 (2026-04-26)

  • 📸 重构截图功能:改为先绘图后截图,截图自动包含绘图内容
  • 🎨 优化工具栏 UX 和视觉样式,重构 CSS 代码
  • 🔧 改进内容脚本逻辑,提升交互体验
  • 📦 新增 Windows 构建脚本 build.ps1
  • 🧹 清理冗余文件,简化项目结构
  • 📝 更新安装说明和文档

v1.2.0 (2026-04-25)

  • 🧩 插件图标接入标准弹窗入口,安装后可直接从面板开启绘图
  • 📦 新增 build.ps1,Windows 下可一键生成 Chrome 可安装目录和 ZIP
  • 🧹 清理未使用权限,更新安装说明和仓库地址

v1.0.0 (2026-04-20)

  • ✨ 初始版本发布
  • 🖌️ 支持画笔、橡皮擦、矩形、圆形、直线、箭头、文字工具
  • 🎯 对象级编辑系统(选择、拖拽、删除)
  • 🔄 旋转功能(Shift + 拖拽)
  • 🎨 预设颜色面板和自定义颜色
  • 📸 区域截图功能
  • 📐 网格辅助线
  • ⋯ 虚线和填充模式
  • ⌨️ 完整快捷键支持

📄 许可证

本项目采用 MIT License 开源协议。

💬 反馈与支持

  • 🐛 报告问题:GitHub Issues
  • 💡 功能建议:通过 Issues 提交想法和使用场景

⭐ 支持项目

如果你觉得 WebSketch 有用,请给我们一个 ⭐ Star!这将是对我们最大的鼓励。


Made with ❤️ by WebSketch Team

About

绘影-网页快速绘图

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages